memorandums

日々の作業ログです。

ScanSnap,ウェルカムバック!

Catalinaが出たときに,動作しなくなるアプリが多数あると言われてマカーはビビっていたわけですが...

その動作しなくなるアプリの中に,ScanSnapがあったんですね...

アプリが使えないのはしかたがないとして...ハードまるごと使えなくなるのは痛くて...とりあえずMacbook Airの古いやつをMojaveにしたままにしていました.

本日,たまたま,Scansnapでぐぐったら...以下のリンクが...目を疑いました😍

www.pfu.fujitsu.com

そうなんです...ユーザーの声に応えてくれてなんとCatalina版を作ってくれたんですねぇ〜.素晴らしいPFUさん!!

早速,ダウンロードして動かすと,今までと全く変わらない使用感でした.早くなった気もします.

ありがとう,PFUさん!

ずいぶん前にリリースされていたようですが...気づかないものです.

AWS EducateのClassroomの登録方法についてのメモ

昨年度からCloud9を使うためにAWS Educateを使うようになりました.

当初はCloud9.ioではなくAWSを使うということで「学生さんの使い方によっては万が一お金を請求されたら...」と不安もありましたが,色々と調べてその万が一はないことがわかり...それでも不安でしたが...今年度で2年目になります.こなれてきた感じはあります.

前期には,学生さんにフツーにスターターアカウントを登録してもらい使ってもらいます.自分でAWSのアカウントを持っている学生さんもたまにいます.そういう学生さんが増えたらいかにも情報学科って感じがしますけどね.

うちはAWS Educateの加盟校なので75ドル分のクレジット(無料枠)がもらえて,使い切っても一度だけ追加の20ドル分を申請することができます.

それでも,下記のようにクレジットを使い切ってしまう学生が年に1,2名出るんです...どうしてその差が生まれるのか未だにわかりません.

memorandums.hatenablog.com

ということで,後期の授業では,スターターアカウントとは別枠で,Classroomという仕組みを申請します.昨年もそのようにしました.

昨日,今後期分の申請をしたところ,今朝すぐに返信があったので,AWSの方の対応もこなれてきた感じです.

じゃ,Classroomって何よ?って話ですが...

以下に説明がありますが...わからないですね.

aws.amazon.com

スターターアカウントは,学生が個人的な活動で使用することを前提とした枠と思われます.

最初にクレジットが与えられた後,年度(年?)で自動的にクレジットが補充される.

在学中はずーっと繰り返される...という認識です.

Classroomはその名の通り,教員が授業を実施する上で受講生に確保する枠になっています.

学生のアドレスは1つなので...スターターアカウントのクレジットを使っているのか?Classroomのクレジットを使っているのか?区別がつくのか心配でした.一度,AWSに問い合わせてみたことがあります.参考まで,以下に添付します.

クラスルームクレッジトはメンバークレジットと別になりますので、メンバークレジットには影響しません。スターターアカウントであれば、50ドルのクラスルームアカウントに各自のポータルからアクセスできるようになります。どのサービスを使うかでテンプレートを選択してください。

以下,Classroomの申請の手順です.

(1)AWS Educateにログインします.

https://www.awseducate.com/signin/SiteLogin

(2)それから,①を押して②を押します.

f:id:ke_takahashi:20200910085236p:plain

(3)次に,①を押して②を押します.授業で使いたいサービスによってテンプレートを3つまで選べるようですが,私はスターターアカウントと同様でよかったのでこの選択にしています.

f:id:ke_takahashi:20200910085445p:plain

(4)続いて,クラスの詳細を入力します.科目番号はあるけど米国式ではないので通用しないと思い,とりあえず3年向けの授業なので300としています.あとは適当な感じで.恥ずかしいですが,ご参考まで書いておきました.入力終わったら右下のNextボタンを押します.

f:id:ke_takahashi:20200910090054p:plain

(5)最後に,受講者全員分のメールアドレスを入力します.①を押すとExcelファイルがダウンロードされますので,そこにメアドを貼り付けてアップロードボタンを押してSubmitボタンを押せば完了です.何てことはないです.メアドをどうやって取得するか...ですが,昨年はGoogle Formsを使ってメアドを入力してもらい登録しました.今年は,オンライン授業のためGoogle Classroom登録のためメアドが入手済みだったのでサクッと登録できました.

f:id:ke_takahashi:20200910090327p:plain

ちなみに,授業は9月14日から開始になります.

後期も引き続き感染防止のためZoomでのオンライン授業となります.

授業の後半は2人でチームを作って分担して自分らで企画したWebアプリケーションをRailsで作ってもらいます.

今年は完全にフルリモートです.さて,どーなりますやら,楽しみです😁

Nintendo Switch Lite ジョイスティック修理したった

小学生の娘用に買ったスイッチライトの左ジョイコンの動きがおかしいことに気づきました.

本人は気にならないらしいのですが...どう考えてもおかしい.

以下,キャリブレーションの画面です.

www.youtube.com

まぁ,フツーのジョイコンでもあるあるです.何個修理したことか.

子供がフツーに使っていて一年も経たないうちにこの状況になるってやはり子供向け玩具としてはアウトですね...すぐ壊れるなら部品も決して高くないものですから,交換しやすく作っておけばよかったんですよね...残念です.ニンテンドーさん,この失敗は次機開発に活かしてください.

修理に出すのも面倒なので自分で修理しました.スイッチライトの分解は初めてだったのでちょっと手間取りましたが,全部で1時間くらいで交換完了しました.

ここまで30分くらいですかね.裏蓋(というか表蓋?)を外すのにジョイコンと同じくY字のドライバが必要です.

f:id:ke_takahashi:20200907195805j:plain

ジョイコンのカバーの色が純正とは違うので付け替えようとしたのが以下です.ただ,純正のカバーはズレ防止のため突起がついているので交換は無理でした.

f:id:ke_takahashi:20200907200008j:plain

あとは元に戻して終了です.

フォートナイトしている娘に「どうよくなった?」と聞くと「別に変わらないよ」とか...orz

気にしいの元エンジニアでした.

僕は見ませんでしたが,交換方法の詳しい手順はググればたくさん出てきます.ただ,やってみて思うのですが,最後にフタを閉めるのがちょっと工夫が必要ですね...

スイッチ本体の画面交換もしましたが,そのときのように間違ってコネクタを断線してしまうような危険性はありませんが...こういうのやったことがない大人の方や小学生は辛いと思います.ニンテンドーに修理に出した方がいいですね..

あくまで自己責任でお願いします.

ついつい立ち寄って買って帰る本屋さんのこと

JR鹿児島本線の最寄駅は春日駅なのですが,ここが快速が停まらないので,1つ前の南福岡で降りて乗り換えるか徒歩で帰宅します.

で,この南福岡駅は商業店舗が連結した,少し大きめの駅なので,乗り換え時間があるときに改札を出てプラプラすることがたまにあります.

その店舗の1つに明林堂書店があります.

エキテン:株式会社明林堂書店 JR南福岡店

どんな地方にもあるような,ごくフツーの書店です.

でも,ついつい立ち寄っちゃうんですね...

通勤で乗り換えする博多駅には丸善がありますが,博多駅で改札を出てなかなか来ないエレベータを待ったり,ながーいエスカレータを登るのも面倒ですから気軽には立ち寄らないんですよねぇ...

その点,明林堂さんは,改札を出て屋内を50歩?くらい移動すれば立ち寄れちゃうんですねぇ.

立地ってやっぱり大切なんだな...と自分の行動を振り返ると思うわけです.はい.

で,なんでこんなフツーのことを書いているのかというと,以下のツイートをたまたま見かけたからでした.

両方の気持ちがわかります.

私はポイントはどーでもいいけど,持ち帰る面倒さを考えると,Amazonでポチった方が楽だし,ちょっと冷却期間をおくことで必要ない買い物を避けることができる場合もあります.IT本なんかは旬を過ぎると ”いらない子” になってしまうので処分するのも面倒です.なら,kindle本かsafari本でいいな...と思っちゃうんですね.

ただ.電子書籍のデメリットは確実に感じています.

買ったものの目の前にないので,しばらくすると買ったことすら忘れていることがあります.

買ったその瞬間は「読みたい」「読んでおこう」って思うんですが,日常で他のことをやっているうちに忘却の彼方へ行ってしまうんですね...

その点,リアル本はいい.

常に持ち歩いていると「あっ読まなきゃ」ってなりやすいです.

最近,通勤を再開したので,移動時間で読むことができます.

先日,たまたま上記の書店に立ち寄ったときに買ったのが以下の2冊でした.

数学する身体(新潮文庫)

数学する身体(新潮文庫)

その数日前にたまたまACMの会誌で以下の記事をチラ読みして,同じ第二次世界大戦でも国によって捉え方が違うんだな...と当たり前のことを再認識しまして興味を持った状態でした.ざーっと流れを知る本はないかと明林堂さんの書棚を物色したところ以下の本がオススメされていましたので手にとった次第でした.

How WWII Was Won, and Why CS Students Feel Unappreciated | August 2020 | Communications of the ACM

その下の本は,書店のオススメコーナーに並べられていた1冊で,薄いし読みやすそうだな,と思って買いました.

電子書籍はいい面は確かにあるし,リアル本を買うにもネットは便利だけど...

たくさん本が並んでいても,自分が読むべき本を知るきっかけがないと読む動機がわかないし,本を良く知る書店の方のオススメはやはりいいなとも思います.

無くなって欲しくはないですから,どんどん利用するしかないですね.

MS-ACCESSのACCDBファイルをlibreOfficeのBASEにインポートする手順(macOS)

MS-ACCESSを立ち上げて、ACCDBファイルを開いて、Excelなどにエクスポートすればいいんだろうけど、ACCESSがない、例えば、macのような環境でできないか調べてみました。

すると、mdb-toolsというありがたいソフトウェアがあることを知りました。

ja.osdn.net

macではbrewで入れるのが簡単のようです。

brew install mdb-tools

これで準備完了。

では、手元にあるaccdbファイルを変換する手順を以下にメモりたいと思います。メモメモぉ〜。

(1)ターミナルを開いて、accdbファイル(ここではaaa.accdbというファイル名にします)のある場所までcdで移動します。そして、以下のコマンドを実行します。accdbファイルの中にt_部屋とt_宿泊予約というテーブルが入っているとします。以下の2行でCSVファイルとして2つのテーブルデータを取り出すことができます。mdb-toolsの使い方はあちこちに情報があるのでググってください。

mdb-export  aaa.accdb  t_部屋 > t_部屋
mdb-export  aaa.accdb  t_宿泊予約 > t_宿泊予約

(2)t_部屋とt_宿泊予約はCSVかつテキストファイルなんですが、UTF-8なんですね。。。このままではExcelに読み込むと文字化けします。で、iconvを使って文字コード変換します。コマンドは以下の通り。iconvも超有名なコマンドなので使い方はググってください。

iconv -f utf8 -t sjis t_宿泊予約 > t_宿泊予約.csv
iconv -f utf8 -t sjis t_部屋 > t_部屋.csv

(3)続いて、上記の2つのCSVファイルをダブクリします。Excelが入っていればExcelが起動するはずなので2つのシートをドラッグ&ドロップで1つのワークブックに合体して、名前をつけて保存で、XLSX形式で保存してください。ここでは、data.xlsxと名前をつけたとしますね。

(4)あとは、libreOfficeを起動します。ここでは日本語化した6.4.6.2を使います。7.0.1でも同じようですけど。[新規作成]-[データベース]を選択してください。すると以下のような画面になります。「既存のデータベースに接続」を選択して「表計算ドキュメント」を選択し、次へを押します。

f:id:ke_takahashi:20200904014407p:plain

(5)続いて、ブラウズボタンを押したあと、上記の(3)で作成したdata.xlsxを選択して次へボタンを押します。

f:id:ke_takahashi:20200904014517p:plain

(6)はい、終了〜。2つのテーブルがインポートできました。

f:id:ke_takahashi:20200904014656p:plain

(7)中身を確認してみましょうか?テーブル定義なんとなくいいですね〜列名はもちろん型情報も推定してくれています。また、データの中身も文字化けせずはいっていますね。

f:id:ke_takahashi:20200904014733p:plain

f:id:ke_takahashi:20200904014748p:plain

めでたしめでたし。ちゃんちゃん😁

購入したkindle本を地道にpdf化する方法

IT関係の本は1・2年したら使えなくなる本が多いので、最近はできるだけ電子書籍kindle)で買うようにしています。

ただ、kindleフォーマットはkindlekindleアプリでしか読めません。

これは結構な制約なんですね。。。

やはりPDFにして広い画面で読みたくなる場合があります。

そんなときに、kindleファイルを以下のようにごにょごにょしてPDF化する方法はあるにはあるんですが、最近は厳しくなったようで(僕は)うまくいきません。

memorandums.hatenablog.com

以下、原始的ですが、最近やっている方法をご紹介します。

kindle本を持っているということは少なくとも買った方でしょうから変な使い方はできないと思いますので。

私はMac使いなのでmacOSでの手順です。ただ、原始的な方法なのでソフトウェアさえ揃えればWindowsでも同様のことができるはずです。はい。

じゃ、スタート。

(1)まず、mackindleアプリで購入したkindle本を開きます。そして、kindleアプリを全画面表示します。

(2)その状態で⌘+Shift+3を押します。全画面をキャプチャした画像ファイルがデスクトップ上に出現します。なお、このときに、Catalinaでは右下にプレビューが表示されますよね?この作業を始める前に邪魔なので消します。手順は⌘+Shift+5を押すと以下のような画面が表示されるので、フローティングサムネールを表示のチェックを外します。

f:id:ke_takahashi:20200903213925p:plain

(3)あとはひたすらページを送って1ページずつ⌘+Shift+3を押していきます。完了すると、デスクトップ上に画像ファイルが大量に現れます(汗 邪魔なので、全ファイルをフォルダに入れます。例えばimageフォルダとか。

(4)続いて、キャプチャした画像ファイル(PNG)をXnConvertというアプリを使って一括処理します。windowsで昔使っていたirfanviewに似ています。以下、XnConvertの操作になります。

www.xnview.com

(5)XnConvertを起動して、imageフォルダをドラッグ&ドロップします。
f:id:ke_takahashi:20200903214652p:plain

すると以下のような感じになるはずです。
f:id:ke_takahashi:20200903214709p:plain

(6)動作タブを押します。
f:id:ke_takahashi:20200903214750p:plain

(7)動作を追加ボタンを押して、トリミングを追加します。
f:id:ke_takahashi:20200903214821p:plain

(8)右側のプレビューを見ながら上下左右のトリミング量を入力します。
f:id:ke_takahashi:20200903214910p:plain

(9)①の出力タブを押して、②を押して変換後のファイルの保存先を指定し、③で出力ファイル形式をjpgに設定し、最後に右下の「変換」ボタンを押します。
f:id:ke_takahashi:20200903215149p:plain

(10)出力されたファイルを全部選択し、右クリックで開くを選択します。プレビューが起動して全画像ファイルが開かれます。
f:id:ke_takahashi:20200903215322p:plain

(11)最後に、プレビューのメニューからプリントを選択してPDFとして出力すればできあがりです。用紙の向きを90度変えるのをお忘れなく。今回の本は全部で225ページありまして(見開きでキャプチャしているので書籍としてのページ数は500ページ近くありますけどね)、PDF化したファイル容量は40MBでした。まぁ、悪くないです。画質は画面の解像度に依存しますが。。。見えればいいですよねぇ。

リアル本を買って、裁断して、スキャンして。。。って考えると、こっちの方が楽ですね。はい。

とりあえずオススメです。

コピーしたファイルはあくまで個人利用ですね。はい。

HSQLDBをmacOSで利用するときに大ハマリしたこと

後期の担当授業(サブ)の1つに2年生向けのデータベース演習という科目があります。

メインで担当されていた先生が今年の春で退職されて、新しく来られた先生がメインを担当されることになりました。

今年はオンライン授業になるため、演習室のPCではなく、自宅のPC(Windows or macOS)で動作することを準備しなければなりません。

mac使いなのでmacの準備に関してサブとしてお手伝いすることになりました。

早速、演習で使用するツールをmacにいれて動作確認していたのですが、その中の1つであるHSQLDBで大ハマリしました。

HSQLDBJava製なのでJVMが動作する環境であればどこでも動作する。。。と高を括っていました。

最新版(2.5.1)を以下のサイトからダウンロードし、圧縮ファイルを展開し、中にあるbin/runManager.batをコピーしてrunManager.shにして、中のパス名などをmac用に書き換えました。

hsqldb.org

以下のような感じです。なんてことはない作業です。

java -classpath ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager

すると。。。以下のエラーメッセージが表示されました。

を検出およびロードできませんでしたtil.DatabaseManager
原因: java.lang.ClassNotFoundException: org.hsqldb.util.DatabaseManager

夜中に2時間くらいウンウン言いながらあれこれ試しましたがダメ。。。

万策尽きた。。。ところで、偶然、AtomでrunManager.shを開いて改行を削除してjavaから始まる1行だけにして保存して再度実行してみると。。。うまく起動しました。

上記で、runManager.shを編集するときにいつもの癖でvimでやっていたんですね。

もともとがbatファイルというくらいなのでWindows形式のファイルだったんです。それをそのままコピーしたので、改行コードの違いが残っていたのでしょう。その見えないキャラクタコードが邪魔をして、上記のわけのわからないエラーが表示されていたのだと思います。

再度、batファイルをコピーしてshファイルを作成し、今度は最初からAtomで編集して以下のようにしてやれば、一発で動作しました。。。vimめ。。。

java -classpath ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager

ついでに書くと、org.hsqldb.util.DatabaseManagerだと表示のフォントが崩れるのでSwingバージョンを使った方がいいようです。なので、runManager.shの中身は以下のようになります。

java -classpath ../lib/hsqldb.jar org.hsqldb.util.DatabaseManagerSwing

さらに、runManager.shをダブクリすると起動するようにしたいのであれば、FinderでrunManager.shを右クリして「情報を見る」を選択し、このアプリケーションで開くのXcodeからターミナルに切り替えます。

その後、runManager.shの中身を以下のように変更します。cdの行のパスはhsqldbを解凍したフルパス情報になります。みなさんの環境に合わせてください。

cd /Users/(ユーザ名)/Desktop/hsqldb-2.5.1/hsqldb/bin
java -classpath ../lib/hsqldb.jar org.hsqldb.util.DatabaseManagerSwing

あとは、runManager.shを右クリで「開く」を選択し一度起動すれば、次からはrunManager.shをダブクリするだけで起動できるようになります。

まいった。。。こんなことで2時間もハマるとは。。。