「記憶の宮殿のトリセツ」を読んで記憶の宮殿を使い始めました

こんにちは!相変わらず中国は自宅待機が続いていますが、深圳から動かなかったおかげでようやく明日から出勤できそうです。

自宅にこもっているので、思う存分読書を楽しんでいるのだけど、読んだ端から内容を忘れてしまうので、そんな流れから記憶術に手を出し始めました←雑

ということで、それに伴って購入した「記憶の宮殿のトリセツ」という本を読んだ感想と、著者のHiRoさんとメールのやり取りを今回は書きたいと思います。

※ちなみに、本記事は記憶の宮殿のテクニック ( 場所記憶法 ) そのものには触れていません。記憶の宮殿については、本書の著者であるHiRoさんのブログが非常に詳しいので、そちら、もしくは記憶術関連の書籍を参照していただくほうがいいと思います。

記憶の宮殿

f:id:Shoriencohol:20200216231908j:plain

記憶の宮殿という言葉は、だいぶ前に読んだ「ごく平凡な記憶力の私が1年で全米記憶力チャンピオンになれた理由」という本で知っていました。

ただ、この本は、記憶術というものが一般的で誰でもできる、ということは書いてあるけれど、記憶術のテクニックを伝授する本ではないため、その構築の仕方や特訓方法については詳しく言及されていませんでした。また、原著が日本語ではないこともあり、登場するテクニックにピンとこず、当時は「ふーん」で終わっていました。

で、いまさら思い出して、「記憶の宮殿」という言葉をググってみたわけです。

記憶の宮殿のトリセツ

そこで、下記のブログに行き当たりました。

memory-kioku.com

このブログには記憶の宮殿の作り方やコツ、トレーニング方法などが非常に詳しく書いてあり、「え?これ無料でいいの!?」って感じるレベルです。

・・・と思っていたら、本も書かれているとのことなので、早速購入してみました。

memory-palace.booth.pm

本の中では、ブログ内で紹介されている以上に細かく記憶の宮殿について記載されていました。特に、ここが特徴的だと感じたのが、下記の3点です。

  • 記憶の宮殿の作り方の例が自宅ではない
  • 記憶の宮殿の育て方が記載されている
  • 記憶の宮殿の応用ではなく作り方・育て方に特化

それぞれの特徴について説明していきたいと思います。

記憶の宮殿の作り方の例が自宅ではない

記憶の宮殿の話が書いてある本や記事を見ると、大抵「身近な自宅から」と初めに書いてあります*1。ただ、この本で最初に例として取り上げているのは、「外国人の人気スポットNo.1」という理由で、伏見神社です。

確かに、鳥居や狐の石像など記憶に残りそうなポイントが多くあり、イメージ記憶という記憶の宮殿の本質にピッタリの場所だな、と感じました。

それ以上に感じたのが、単に有名な場所だからここがいい、という説明ではなく、「自分で気になったポイント」として、石畳のちょっとした違いの部分や電話ボックスなどを例に上げているところです。要は、自分なりのポイントを発見することの楽しみが非常に強調されています。これを読むと、「記憶の宮殿を構築する」という行為自体が楽しく感じられます。実際に読後、「ああ、旅に行ってこんな感じで風景眺めて頭の中で「宮殿」として残しておけたら、すごく楽しそうだな!」と強く感じました。

結局、私は例によって例のごとく自宅から記憶の宮殿の構築をはじめましたが、その後、記憶の宮殿をどうやって広げようか、と考えるたびに、玄関の扉を開けるのが楽しみになりました←大げさだけど本当

記憶の宮殿という記憶術が、単なる技術ではなくそれ自体が楽しいものだと感じさせてくれる点で、本書のこの特徴は大きいです。

記憶の宮殿を育てる方法が記載

記憶の宮殿の作り方について言及している本や記事は何度かみましたが、「育てる」ということにここまで言及しているものはないかなと思います。

特に、

  • 記憶の宮殿をただ周回する
  • 記憶の宮殿にただイメージを置いてみる
  • それぞれのタイムを測る

というトレーニング方法は斬新でした。なんといっても、このトレーニングでは記憶術であるにも関わらず全く記憶しないからです!

実際、Memory Leagueで画像記憶などをやってみると、記憶の宮殿を周る速さとイメージを置く速さは重要になってくることが身にしみてわかりました。

また、育てた記憶の宮殿を、一軍、二軍、三軍、ルーキーなどと分類しているのも興味深いです。一軍レベルの宮殿があってこその記憶の宮殿であって、三軍レベルではできることは限られている、というニュアンスでバッサリ「記憶の宮殿は用途が限られる」という主張を切り捨てています。

自宅をベースに記憶の宮殿を構築してわかりましたが、自宅の中でもポイント間をスムーズに移動できるところや引っかかるところ、またイメージを置くときに手間取るところなどがあります。そこを、「まあこんなもんだろ」と放置するのではなく、ここを「あーここはまだ鍛えどころだからな!」と思わせてくれたのがこの宮殿のクラス分けですね。

つまり、記憶するにも基礎体力(脳力というべきか)が必要であり、記憶以外のイメージ力をきちんと育てなければならない、ということが、その鍛え方を含めてきちんと述べられています。

この記述に触れたことで、この記憶術を使った競技が「メモリースポーツ」と呼ばれるのも腑に落ちました。

記憶の宮殿の応用ではなく作り方・育て方に特化

記憶術、というとなんとなく怪しく感じるのは、某少年誌によく掲載されていた広告のせいではないでしょうか?笑

実際、私自身も小学校時代に「お前はあの記憶術をやって頭にチップが埋め込まれている」といわれのない揶揄をされた苦い記憶があります。。。

・・・で、広告は抜きにしても、こういうテクニック本というのは、得てして「お金持ちになりました!」「異性にモテモテ!」「会社で出世しました!」など怪しい謳い文句がギトギトと書いてあるものが多いです。ただし、本書に関しては、さわりで少し記載はありますが、基本的には記憶の宮殿の作り方や育て方に特化しています。

そもそも記憶術を学ぼう、と思い立って本書に行き着いた人は、記憶術を使って○○したい、という欲求が明確だと思うんですよね。私自身も語学学習や読書の充実に役立てたい、という目標がありました。その分、そこらへんの記述がないというのは、逆に本書の良さである(と私が考える)「記憶の宮殿を作ること自体の楽しさ」を強調していると思います。

以上、3つの点で他の記憶術の本と異なっていて、非常に興味深く読ませていただきました。

著者に質問してみた

で、本の最後にメールアドレスの記載があったので、本書や(おそらく)ブログでも触れられていなかった点を、厚かましくも質問してみました笑

な、なんと!メールしたその日に返信あり!

その内容について、HiRoさんに掲載許可をいただきましたので、以下に掲載したいと思います。

※個人名以外は原文ママ


Q1. 記憶の宮殿は使い回しが効きますか?例えばTODOリストのように、短期的に覚えておきたいものは何度も使い回すと思うのですが、そのたびに記憶の混乱が起こったりしないものでしょうか?

TODOリストみたいに短期的なものは、復習をしなければ時間がたったら自然と消えていきますが、 使いまわすときは使う間隔をしばらく開けておいた方がいいですね。 間隔が短いとおっしゃるように前のイメージが残って混乱を招きやすいですからね。

できることなら記憶の宮殿を複数作っておいて、一度使ったら数日休ませるようにして、 その間は他の宮殿を使うようにしてローテーションを回せるようにするのが理想的ですね。


Q2. 1つの宮殿に設置するポイントはどれくらいがいいというのはありますか?個人差がありますでしょうか?

何に利用するかにもよると思いますが、個人的には50くらいが理想的だと思います。 50くらいあれば買い物リストなどの記憶にも十分足りる分量だと思いますし、 トランプも1パック、数字も100桁、単語も50語とメモリーリーグの全ての種目にも対応できる分量です。

あまり多すぎても馴染ませるのに時間がかかりますし、修正や改良するときに融通も利きにくくなりますしね。

1つの場所に2つ3つと複数のイメージを置くテクニックが使える場合は1/2,1/3に減らしてもいいと思います。


Q3. Memory LeagueのImage記憶で、初心者が目指す一旦の目標レベルはありますか? 記憶の宮殿を今日から使い始めて、いったん12枚まではほぼ記憶できることがわかりました。

う~ん、レベル8~10くらいですかね? IMAGESは他の種目よりも比較的難易度が低めなので、初心者の方でもレベル8くらいは狙いたいところですね。 ただshorieさんの場合は、今日からやりはじめてすでに12枚までいけるとのことなので、レベル10は十分に狙えると思います。 初日から12枚もいけるのでポテンシャルも高いものをお持ちだと思いますし、 記憶の宮殿が馴染んでくればもっとスピードや精度も上がってくると思います。 ぜひとも30枚パーフェクトを目指してほしいですね!

すでに30ほどポイントを作っているとのことなので、タイムを2分とか3分とか長めに設定して、30枚全部記憶する練習をするのもいいと思います。


て、ていねいだ。。。。素直にちょっと感動しました。

超初心者の稚拙な質問・疑問点に丁寧に答えていただき、非常にありがたかったです。

特に、Q2の「ポイントを多くしすぎても育てるのに時間がかかるし修正が大変」というのは、まさに本書の「記憶の宮殿を育てる」というテーマと合致しており、大変参考になりました。

終わりに

ということで、自分の中の記憶の宮殿、育てていこうと思います。

ちなみに、Memory Leagueの現時点でのスコアは、

  • IMAGES: 14枚/min
  • NUMBERS: 18桁/min

です。どこまでのばせるかなー。

ではではー

*1:本の中で自宅から記憶の宮殿を作ることを否定しているわけではなく、むしろ「まずは自分の部屋がおすすめです」と書いてあります。先に紹介したブログ内でもそうおすすめしてありました。

中国国内でKindle paperwhiteを購入し日本書籍ダウンロード→端末転送できました

こんにちは。

世間は新型コロナウイルスで大騒ぎですが、前回の記事でも書いたように深圳はある意味平和です。ただ、春節は2/9まで延長になり、外出も基本は控えるように言われており、厳戒態勢は続いています。

そんなわけで、時間は山ほどあるのと、今年に入ってやたら読書欲が高まっているので、Kindle端末が欲しくなってしまいました。

スマホ、タブレットともに所有の身としては、「それでいいじゃん」という気もしますが、Kindle端末とそれらの決定的な違いは、

本しか読めない!

これにつきます。これに、読書に集中できるとかそんなハック的な利点を述べるつもりはなく、ただこの一点、

子どもに取られない!!!

これが大きいです。スマホ、タブレット、果てはPCなど、画像・動画・ゲームの機能がついているこれらは、子どもに強奪されるリスクが高く、また頻繁に使い方などのアドバイスを求められます。落ち着いて本など読んでる場合じゃありません。

で、(マンガを入れない限りは、という注釈付きですが)文字しか読めない端末を手に入れることが急務となりました。

立ちはだかる壁

実は、Kindleほしい欲求は中国来てからずっとあったのですが、立ちはだかる壁が下記の二点。

  1. Kindleの日本語対応端末が手に入りにくい。

  2. Amazonの日本サイトはVPNなしではつながらない。

でした。1を何らかの方法でクリアしても、中国国内のネット環境でAmazonの日本アカウントにログインできるのか、これが決定的に不安でした。

とりあえず買ってみて、そして使えた!

ま、不安がありましたが、とりあえず実行することにしました (なぜ)

そして、結論としては、できました!

以下、その顛末を書こうと思います。

※最低限、VPNの契約は必要です。

まずは購入

まず、実店舗での購入は無理なので、ネットで探索。当然こういうときにみにいくのは淘宝ですね。昔は淘宝といえば偽物だらけで有名だったようですが、今は"天猫"という別ブランドもあり、割と落ち着いてるイメージがあります。とはいっても、似たようなサイトの京东と比べると「え?こんなの買えるの?」というものも数多くラインアップされていて、今回のミッションにはぴったりですね。

で、Kindleで検索して、特に迷うことなく下記を発見。赤字の部分に「日版」「正品」と書いてあるので、日本版の正規品、ということだと思われます(知り合いの中国人にも一応確認した)。Kindleで検索すると山ほどこういう店舗があって、いいか悪いかは別としてさすが淘宝ですね。

f:id:Shoriencohol:20200204113359j:plain
淘宝検索結果の一例

山ほどある=悩む、なんですが、とりあえず良さげですぐ手元に来そうなやつをポチりました。

届いた!

コロナウイルスの影響あるかな?と思ったら、店舗が深圳で、次の日には届きました。さすがネット通販大国中国。

f:id:Shoriencohol:20200204114614j:plainf:id:Shoriencohol:20200204115031j:plainf:id:Shoriencohol:20200204115108j:plain
梱包状態はかなりいい感じでした。箱にも日本語が書いてあり、日本版っぽい。あと、やたらおまけがついてきます (使えるかどうかは別として)。

そして、緊張の電源オン!…ちゃんと日本語が選択肢にある!

f:id:Shoriencohol:20200204115737j:plain
中国語もあるから設定すれば中国語も使えるのかな?

ということで、無事に第一の壁「Kindleの日本語対応端末が手に入りにくい」はクリアしました。

まあ、こんなことしなくても、日本に帰省したときに買う、香港で買う、などの選択肢はありますが、コロナウイルスのことを差し引いても元来の出不精であり、中国国内で完結できるか、という実験も含めてこういうやり方をとってみました。

セッティング

さて、次の壁は無事にログインできるか、というところですが、これについては事前調査である程度できそうな予感はしていました。それは、タブレットのアプリでVPNなしで接続した場合、本のダウンロードはできないけどサムネイル画像の更新まではできたので、amazon.co.jpのサイトに読みには行ってアクセスはするけど、そのあと読み込みほかでブロックされる、というような感じかなと。中国の金盾の仕組みはよくわからないのですが、他のアプリなどの状況を見ると、どうやらアプリなどのAPIまではブロックしている感じではないです。その証拠に、なにかのサービスで「Twitterに投稿」みたいなのを予め設定しておけば、連携でTwitterに自動投稿されることが確認できていました (様々なサイト・サービスを試したわけではないので不確定ですが。)

ということで、Kindle端末からamazon.co.jpへのログインは、きっとこの抜け穴的な点に該当すると考えたわけです! (不確実!!)

ログイン

実際にwifi接続してログインしました。信じられないくらいあっさり行けました。なのであっさり書きます。

f:id:Shoriencohol:20200204121303j:plainf:id:Shoriencohol:20200204121443j:plain
「こんにちは○○さん」と言われたのでログイン成功。

ちなみに、先程言及したように、サムネイルまではサーバーにアクセスしてゲットしていたようです。自分の本棚さらすのはちょっとあれなので載せませんが(といいつつブクログやってたりするので矛盾)。もちろん、下の写真のようにダウンロードはできません。

f:id:Shoriencohol:20200204122259j:plain
待てど暮せど待機中

端末に書籍を移動

実際ログインするまでが山場だったので、あとは下記手順でできますね (雑)

  • VPN接続したPCでamazonのサイトに移動
  • コンテンツと端末の管理画面から、移動したい本に対して「ダウンロードしてUSB経由で転送」というコマンドを実施
  • Kindle端末をケーブルで接続し、Kindle内の"document"フォルダにダウンロードしたファイルを移動

ただ、「ダウンロードしてUSB経由で転送」というコマンドがKindleアプリに対しては実行できないようで (利用できる端末がない、的なエラー画面が出る)、試したのは端末が手に入ってからでしたが。あと、転送って言ってる割に転送は手動です笑

f:id:Shoriencohol:20200204124030j:plain
左がダウンロードしたファイル。右がKindle。右の、documentフォルダに移すと端末で本が読める。

その他

  • この方法で端末に移動した本については、ハイライトの同期などは実施されません。というか、されるかどうかVPN経由の接続ができないため試せません。香港or日本で試してみようかと思います。
  • Kindle unlimitedの本をこの方法で端末に移動すると、10冊の制限を難なくクリアできます。(下記の記事参照) 単に推定ですが、Amazon様は端末買ってくれた人にはこっそりこの機能を提供しているのではないか?と思ってます。

【追加料金なし】キンドルアンリミテッドで10冊以上の本を無限ダウンロード&永久保存する方法を解説します | 脱完璧主義日記

ということで、しばらくはこの端末で読書ライフを楽しみたいと思います。ではではー

深圳にいますがいたって快適です

日本のものも、中国のものも、テレビは全く見られず、中国の情報も政府の公式発表を頑張って読むくらいです。そこで得られる情報は

  • 接触感染と飛沫感染で、空気感染はない
  • 日々感染は拡大してるが、武漢関係者以外の広がり方は限定的
  • 致死率はどんどん下がっている

といったところですかね。

そして、深圳で活動して感じることは

  • マスクはどこも売り切れ。近くの薬局は聞かれまくるからか「口罩,酒精 无货 (マスクとアルコール消毒液は売ってません)」と巨大な字で書いてある。
  • 野菜などの物資は本日1/31くらいからほぼ正常運用。
  • みんな(マスクはしてるけど)普通にバドミントンとかやってる。

まあ、当たり前なんだけど、みんなウイルスがあろうがなんだろうがご飯を食べて、遊んで、仕事して、生活しなければならない。

ウイルスが広がろうがなんだろうが、対策は、

  • マスク着用
  • 不要不急の外出は避ける
  • うがい・手洗いの徹底

の基本対策しかないわけだし、それ以上でもそれ以下でもない。

空気感染はしない(と今のところは思われる)ので、必要以上に怖がる必要はない。

ちなみに今の深圳は、人も車もものすごく少なくて、空気はきれいでとても快適に過ごせます笑

【Kotlin】自作Adapterを使用してListViewに自作クラスの情報を表示

こんにちは。

新年あけましておめでとうございます、ですが、深圳は連日昼は20℃を超えるし、長期連休でもないので全く年末年始感がないまま2020年を迎えております。

日本にいるときは1/1は何もしない、と決めているのですが、上述の通り年末年始感がまったくないので、ブログでも更新しようかと思い立ったわけです。

ListViewに独自の項目を独自レイアウトで表示させたい

さて、前回はTextViewをDrag & Dropで動かしてみましたが、最終的に作りたいのがList形式のTodoリストであり、自由なレイアウトでListViewに表示 + Drag & Dropで並び替え、ということを考えると、一工夫が必要なことがわかりました。なぜなら、そもそもListViewにはonDrag的なメソッドが標準でないため、実行するためにはListViewを継承した独自クラスの作成をしなければならないことがわかったのです。

そこまで飛ぶにはちょっと気合がいるので、まずはListViewに好きな項目を表示できるようにしよう、と思い立ったわけです。

BaseAdapterクラスを継承

やりたいことは、

  • 独自クラスを作ってリストに登録
  • 上記クラス用のAdapterを作成
  • ListViewに表示

の3点。BaseAdapterクラスを継承すれば、やりたいことができることがわかりました。

大ハマリ

で、実際に書いたBaseAdapterを継承した独自Adapterのコードが下記。

class MyAdapter(context: Context, private val tl : ArrayList<TodoTasks>) : BaseAdapter() {

    private val inflater : LayoutInflater = LayoutInflater.from(context)

    override fun getItem(p0: Int): Any {
        return tl[p0]
    }

    override fun getItemId(p0: Int): Long {
        return p0.toLong()
    }

    override fun getCount(): Int {
        return tl.size
    }

    override fun getView(p0: Int, p1: View?, p2: ViewGroup?): View {
        var view = p1
        var holder: ViewHolder

        if(view == null){
            view = inflater.inflate(row,null)
            holder = ViewHolder(
                view.taskName,
                view.taskType,
                view.taskLimit
            )
            view.tag = holder
        } else {
            holder = view.tag as ViewHolder
        }

        holder.taskName.text = tl[p0].task_name
        holder.taskType.text = tl[p0].task_type
        holder.taskLimit.text = tl[p0].task_limit

        return view!!
    }

    data class ViewHolder(val taskName : TextView, val taskType: TextView, val taskLimit : TextView)

}

※BaseAdapter継承したところ以外は外でも山ほど解説があるので省略します。

これは最終形なのですが、過程で大ハマリしました。エラーが何も出ないのに、画面に何も表示されない。。。

f:id:Shoriencohol:20200101192750j:plain
真っ白なリストですね。。。

大ハマリしすぎて、初めて質問サイトに投稿してみました。

teratail.com

これへの回答で、一言ありがたい言葉をいただきました。

アダプタの各メソッドが何を返すべきなのかをもう一度ご確認されては如何でしょうか.

むむむ。。。こんな一言で解決するはずが。。。した!!!

問題点1 getView()以外のメソッドを甘く見すぎた

問題は、初期に書いたコードでgetCount()の戻り値を超適当に0にしていたことでした。色んなサイト見て、getView()が難関すぎ、他の関数は適当にoverrideしておけば問題ない、と書いてあったので、超適当にやりすぎた!

BaseAdapterの挙動に関係すると思われるのですが、おそらくgetCount()でListのサイズを取得、0より大きければgetView()を使って処理、という流れと思われます。実際Logをとってみると、複数回getCount()が実行されたあとにgetView()が実行されていますね。まさに、ちゃんとメソッドの戻り値を見直しましょう、ということです。

f:id:Shoriencohol:20200101192350j:plain
getCount()をなんでこんなに何回も実行するのかは不明…

※ちなみにその他のgetItem(), getItemID()あたりは超適当に実装しても何も問題なく。特に、Kotlinはgetterを使わなくても大抵動くので、Java解説だとgetItem()使って取得しているリストも直接ゲットできました。

問題点2 ViewHolderの挙動

もう一つはまったのが、ViewHolderの実装。これも色々なサイトで、「getView()は何度も実施されるため、ViewHolderを実装したほうがいいよ!」と書いてあり、あまり深く考えずに(理解せずに)実装したら全然動かない。意味不明。最終的に、下記のブログを読んで解決。

www.usaco-pg.com

要するに、ViewHolderはView本体じゃなくて、Viewが持ってるtag情報を保持させて、それを書き換えることでリストの内容を更新する、ということですな。

多分、例えばAというtag情報の中には、Aの値が格納されているメモリの位置と、それについている名前が入っていて、名前=○○、とすることでメモリ情報を書き換え、View本体が見に行ったときに中身が変わっている、ということなんでしょうね。(すごく初心者感。。。)

自分のプログラムで言うと、holder.taskLimit.text = tl[p0].task_limitあたりが該当。

最初、なんでholderの値書き換えてるのにviewをリターンするんだ!?と大混乱でしたが、上記の理解(間違ってるかもですが)をしたことで解決しました。

とりあえず、やりたいことはできた

で、実際の表示画面はこんな感じ。

f:id:Shoriencohol:20200101193935j:plain
リスト登録するのが面倒だったので、Hogehoge大量生産。

いやー動いた動いた。よかったよかった。

次にやりたいこと

次にやりたいのは、入力したタスクを追加、みたいなことかな。まあ、簡単そうですね。←フラグ

ではではー

相互再帰関数でポモドーロタイマー作ってみました

こんにちは

 

仕事上、Excelを使うことが多く、今回はポモドーロタイマーをExcel VBAで作ってみました!

 

ポモドーロタイマーとは

 

ググればすぐ出てくるので詳細は省きますが※1

要はX分作業、Y分休憩をZセット、みたいなタイマーですな。

 

VBAでやるには?

 

取っ掛かりもなにもないときは、まず検索ですね。「VBA タイマー」で検索すると、ストップウォッチの作り方が書いてあり、OnTimeメソッドを再帰させれば、設定時間おきにサブルーチン実施する云々。他の言語でよくあるThread的なことはできなそうなので、この機能使ってやってみるか!

 

で、最初作ったコードがこちら。

f:id:Shoriencohol:20191226211814j:plain

。。。あまりのif文の多さと再帰記述の多さにピントがぶれております。。。美しくない。。。裏でこんなに頑張られるとポモドーロやってても頭に「あー今4回めの再帰文呼び出してるんだな。さっきのポモドーロはあのifで殺されてて。あれ、一体今何セット目?」とか考えて集中できなそう。。。

 

と、悩んでいたところ、SNSより神の手が。

相互再帰させるのはどうですか?(マストドン、とりぽかさんより) 

 

 

おお!再帰を学んだばかりだし手を出すのをためらっていた相互再帰関数!確かに、作業と休憩の2モードがあるから、2関数を別のサブルーチンにすればうまくいきそう!!

実は、コードのヒントはもらいましたが、見ないで「相互再帰」という言葉だけでなんとか正解に行きつけるようにコーディングしよう!そして家に帰って(会社でコードいじってた)、いざVBAを開くと。。。

f:id:Shoriencohol:20191226212903j:plain

あー盛大に文字化けしてますね。。。自宅PCのOSが中国語ベースなので、全角文字が盛大に文字化け。でも、「中国語か文字化けかわからない」という突っ込みもあり。た、たしかに。。。まあ、諦めて英語にするか。。。

 

相互再帰できました!

 

といことで、最終的にできたコードがこちら。

f:id:Shoriencohol:20191226213130j:plain

スッキリした。。。if文の化け物みたいなコードが、各関数1ルーチンのifとたった2回の再帰関数の呼び出しで実現できるなんて。。。場合によるとは思いますが、再帰の凄さを認識しました。。。

 

とはいえ。。。

 

OnTime関数はサブルーチン自体の実行が終わっても裏で動作しているし、それを動的に止める方法はExcel強制終了以外にない、ということもあり、コードミスが有ったときや複雑なコードになった場合のデバッグは厳しそう、というなんとなーくの思いを持っていたら、

複数プロセス(or スレッド or プロシージャ)でくるくる回すと、
バグったときに追いかけるのが大変なので、僕だったらこんな感じで書くかもです。

(1):TrainningTime回数トレーニング繰り返す
(2):そのあと、RestTime回数休憩を繰り返す
(3):SetTime回数(1)(2)を繰り返す

繰り返しは
for rm.text = t.text -1 to 0 step -1
...
next rm.text
みたいにかけないかなぁ(やってないのでわからない。できなければループ変数をiでとって適宜rm.textに表示のため書き戻す感じで)
そうするとApplication.OntimeでなくてApplication.Waitとかでいけたりしないかなと。(sleepが使えたら一番なんだろうけどVBAには標準ではないっぽい。) 

マストドン、ぷらいずあうと さんより

そうですよね。自分も、再帰を学んだばかりだから使ってみたさでやったけど、自分で考えつくのはloop分だし、まあ、個人で使うならまだしも、品質保証必要になったら再帰ってなかなか書きにくいかもなーとか思いつつ、そういういろんなこと考えながらコードって書かなきゃならないんだな、とか思いつつ。

 

日々、勉強ですね。

 

ではではー

 

※1 私が書きたいように書いているので、しょっちゅう大事なところでも省きます。

 

客家黄酒

こんばんは。

今日は、中国のお酒について。

■その前に

私のお酒スペックですが、タイトルにもある通り、かなり好きです。ただ、よく言う「みんなで飲む飲み会は好きだけど、一人では飲まない」ようなタイプではなく、一人で黙々と酒と語らいながら晩酌するタイプです。かと言って、いろいろ知識を仕入れて高いお酒を飲んでウンチクを語るタイプでもないです。日本酒でいうと、吟醸酒や大吟醸酒といった高いお酒をありがたがって飲むタイプではなく、安くて美味しい普段飲みの酒を、飲みまくって探すタイプ。系統立てて鍛えられた精鋭兵士ではなく、野武士、といった感じかもしれません。

なので、今回のお酒も、決して高いわけでもないし、中国人に聞いても「え?そんなの飲んだことない」と言われかねないお酒です。

■黄酒とは

中国のお酒、というと、白酒が有名です。かなり度数の高い蒸留酒(40〜60度)で、元々中国の北の方で作られていたお酒と思われます。上級なものは、国賓の接待でも使われているようで、茅台酒という最上級のものはとんでもない値段がします。よく、「中国に行ったら乾杯で何度も飲まされる」というのはこの酒で、私も速攻で記憶が飛んだことがあります。

黄酒というのは、白酒と違って醸造酒です。日本でいうと、中国の醸造酒というと紹興酒がなじみ深いかと思いますが、紹興酒も「紹興で作った黄酒」というものです。糯米ベースで作ったお酒乃総称のようで、地域によって製法が違い、味も異なります。

■中国での黄酒

中国では、ものによりますが黄酒はかなり安く売っています。いいもので500mlで1600円くらい。安いものは4リットルで300円くらいで売っているものもあり、まあ飲用とは書いてあり飲めなくはないですが、基本的には料理酒のようです。飲めなくはないので、私はだいぶ飲みましたが、中国人には「あれは飲むものではない、正気か?」と言われました。

■客家黄酒

中国に行って一週間くらいで近所のスーパーで何気なく買ったのが「客家黄酒」でした。その頃は、黄酒という呼び名も知らず、客家というのも「接待用?」とか思うくらい何も知識なく購入。500mlで17元(約300円弱)なので、日本酒の感覚でいうとかなり安いし、全然期待はしてなかったのですが、なぜかものすごく美味しくて。なんというか、黄色いワイン、といった感じでしょうか。甘い割に中国人に聞いても「安すぎる、偽物じゃないか」と言われる始末。で、いろいろ調べた結果、黄酒はビール、ワインと並んで、「三大古酒」と言われているようで、その中でも南方(湖南省)が起源、ということがわかりました。
黄酒_百度百科

f:id:Shoriencohol:20191223205634p:plain
中国語まったくわからない状態でこういうのを読み解くぐらいにはお酒が好き

■現地に行ってみた

ということで、中国語しゃべれる人に「客家」に行きたい!と、読み方もわからないまま懇願し、現地へ。ここは本筋ではないので省略(!!)しますが、世界遺産にもなっていて、一昔前にロケット基地ではないかと疑われた、土楼という集合住宅に今も人が住んでいるという地域で、それはそれでとても楽しかったです。で、その土楼の中でお酒も売っているところもあって、念願の黄酒(現地では米酒と言っていた)をゲットしたわけです。

■直接郵送で注文してみた

で、そこのお酒、1リットルしか買わず、美味しかったので写真撮る暇もなく一瞬でなくなってしまいました(ここも省略)。ということで、その時もらった名刺にWeChatの連絡先がのっていたので、つたない中国語と翻訳を駆使して注文してみました。

f:id:Shoriencohol:20191223213934j:plain
この前に、私は日本人です、と伝えましたが、ゴリゴリの中国語で押してくるお店の人(白い方)

まあ、いっぺんにそんなにいらないし、お試しがいいけど、1リットル郵送は申し訳ないから2リットル(4斤)で、と言ったら、うちは10斤(5リットル)からしか郵送していない、と言われ。しかも値段も「あなたが前に買ったときの値段と一緒だよ!キリッ」とか言われたけど、覚えてないし!適当に、多分一リットルで60元くらいだったと思う、とったら、なんとなくその値段で送ってもらえることになり。とりあえず、成功!

■届いた

f:id:Shoriencohol:20191223191449j:plain

え?え?待って待って、たしかに1瓶で2.5リットルで2瓶分から郵送って言ってたけど、この色の違いは聞いてないし、よくわからないけど!しかも、ラベルもなにもないし、注意書きも書いてないし、これ、大丈夫!?いやでも、客家の人たちは商売よりも歓迎ムードがすごくて、騙すような感じじゃない(と一緒に行った中国語ペラペラの人も言ってた)し、とりあえず、お店の人にWeChatで写真送ってみる、か!?

f:id:Shoriencohol:20191223214830p:plain

あ、ああ、うん。「谢谢,您」ね…。ありがとうってことですね。色は、こういうことなんですね、そうですか。僕が悪かったです。まず飲んでみますね。

ということで、色が薄い方を飲んでみました。

f:id:Shoriencohol:20191223215542j:plain
うしろのパソコンは気にしないでください。

う、うまい。。。麹の味が残っている感じで、とてもうまい。。。なんだろう、すごく甘い、甘いんだけど、料理、特に中華料理の油が多い感じには絶妙に合うイメージ。。。度数も(書いてないけど)多分15度くらいで、とてもちょうどいい良い具合。。。5リットル、多い!!と思ったけど、まあ一瞬でしょうね。

薄い方を飲みきってから、濃い方を飲もうと思うので、飲んでから比較の感想を書こうと思います。。

ではではー

はてなブログは中国からアクセスできました

深センからこんにちは。

 

中国からVPNなしでログインできるブログサービスを探して早8ヶ月。

ようやく、はてなブログにログイン→投稿できることが判明。

アカウント作成はできなかったけれど、アカウントがあれば

アクセスとログインはできるようです。

 

とはいいつつ、日記も続けられないのにブログを書き続けるかは

非常に不明確ではありますが。

 

下記のことを酔っ払いながらゆるく書いていきたい。

 

  • Kotlinを使ってのアプリ作成
  • 中国の文化・酒
  • ゲーム
  • 中国語学習

では、初投稿はこのへんで。