2019年12月23日月曜日

Vim で最高の HTML 開発環境 (+Bootstrap) を整えよう

ひさびさに Vim 活をして、Vim で最高の HTML 環境を整えました。 HTML は今までほぼ何も設定してなかったのですが、久々に設定を弄ってみたら、便利なプラグインがたくさんあることに気付きました。 軽くまとめてみたいと思います。

プラグインなしでのテクニックまとめ

ついでなのでプラグインを入れなくても使えるテクニックもまとめときます。
  • dit: タグ内を空にしてカーソルをタグの中へ移動
  • cit: タグ内を空にしてカーソルをタグの中へ移動 (+クリップボードへコピー)
  • vit: タグ内の文字列を選択
  • dat: タグを削除
  • 属性間のカーソル移動: W/B/E (正確には空白区切りで移動)

mattn/emmet-vim

あまりにも有名なので紹介だけ。使いこなせてませんが、特に便利なのは以下かなあ。
ul>li*    # 各行をリストに
ul>li*10  # リストをいっぱい作る
<C-y>d    # タグ選択
<C-y>k    # タグ削除

prabirshrestha/vim-lsp, neoclide/coc.nvim

LSP を利用した補完も、あまりにも有名なので紹介だけ。 prabirshrestha/vim-lsp, neoclide/coc.nvim なら HTML/CSS の補完もサポートしています。

alvan/vim-closetag

HTML の閉じ括弧を自動で入力してくれます。

andymass/vim-matchup

開始タグから終了タグへジャンプできるようになります。その逆ももちろん可能。様々な言語に利用できます。

sukima/xmledit

開始タグから終了タグへジャンプできるようになります。 上記と被ってますが、他にも色々な機能 (下) があるため、HTML に限って言えばこちらのほうが便利です。 一緒に入れても競合しない感じなので、そのまま入れてる。
選択状態で <Leader>x  # 選択タグをタグで囲む、属性も入力可能
<Leader>5  # 開始タグから終了タグへジャンプ
<Leader>%  # 開始タグから終了タグへジャンプ
<Leader>d  # タグ削除, etc.

othree/xml.vim

上記よりもっと高機能な編集機能があります。個人的イチオシはこれ。
<Leader>c  # タグ名を変更
<Leader>d  # タグを削除
選択状態で <Leader>v  # 選択範囲をタグで囲む

ArunSahadeo/Webval

W3C Validator API で Validation Check ができます。

vim-syntastic/syntastic

常にチェックするのであれば、Syntastic を使うと良いと思います。設定は以下のような感じ。チェックツールの設定 (htmlhint) 部分は 公式 を参考に。
Plug 'vim-syntastic/syntastic'
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0
let g:syntastic_html_checkers = ['htmlhint']

skwp/vim-html-escape

HTML Escape は割とよく使うので入れてます。

tpope/vim-surround

文字列を " や ' で囲ったり削除したり、囲ったものを変更したりします。 他には machakann/vim-sandwich も有名。

rhysd/vim-operator-surround

vim-surround より直感的に、文字列を " や ' で囲ったり削除したり、囲ったものを変更したりします。 以下の設定で便利と思いますが、もっと高度な設定をしている人もいる
Plug 'rhysd/vim-operator-surround'
Plug 'rhysd/vim-textobj-anyblock'
Plug 'kana/vim-textobj-user'
Plug 'kana/vim-operator-user'
map <silent>sa <Plug>(operator-surround-append)
map <silent>sd <Plug>(operator-surround-delete)
map <silent>sr <Plug>(operator-surround-replace)
nmap <silent>sdd <Plug>(operator-surround-delete)<Plug>(textobj-anyblock-a)
nmap <silent>srr <Plug>(operator-surround-replace)<Plug>(textobj-anyblock-a)

jvanja/vim-bootstrap4-snippets

Twitter Bootstrap をスニペットで超簡単に入力できるようになります。 今までスニペットを使いこなせたことがなかったけど、このプラグインを入れて初めて、スニペットが便利だと思いました。 こうやって使うんだなあ。 公式の紹介画像 (下) のような自動補完の設定方法が最初よくわからなかったので、そこだけまとめておきます。



vim-lsp + asyncomplete.vim な人は以下のように設定できます。 coc.nvim な人も、ここには書きませんが簡単に設定できるみたい。 スニペットの補完入力が不要ならばもっとシンプルな設定になりますが、補完入力は欲しいですよね。

let g:python3_host_prog = $PYENV_ROOT . '/shims/python3'

:

Plug 'prabirshrestha/vim-lsp'
Plug 'prabirshrestha/async.vim'
Plug 'prabirshrestha/asyncomplete.vim'
let g:asyncomplete_auto_popup = 0
Plug 'prabirshrestha/asyncomplete-lsp.vim'

Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
let g:UltiSnipsExpandTrigger=""
let g:UltiSnipsJumpForwardTrigger=""
let g:UltiSnipsJumpBackwardTrigger=""
let g:UltiSnipsEditSplit="vertical"
if has('python3')
  Plug 'SirVer/ultisnips'
  Plug 'honza/vim-snippets'
  Plug 'prabirshrestha/asyncomplete-ultisnips.vim'
endif
Plug 'thomasfaingnaert/vim-lsp-snippets'
Plug 'thomasfaingnaert/vim-lsp-ultisnips'

:

if has('python3')
  let g:UltiSnipsExpandTrigger=""
  call asyncomplete#register_source(asyncomplete#sources#ultisnips#get_source_options({
        \ 'name': 'ultisnips',
        \ 'whitelist': ['*'],
        \ 'completor': function('asyncomplete#sources#ultisnips#completor'),
        \ }))
endif


jvanja/vim-bootstrap4-snippets は欲を言えば、候補が多すぎて大変なのが玉に瑕だけど、よく使うところだけ覚えれば、かなり楽になります。 設定してみて「なにこれ凄い!」と久々に感じました。やっぱり Vim は最高ですね。

ところで coc.nvim は言語サポートが凄いことになってきてて、coc-angular とか coc-flutter とか出てきている。 LSP はメソッドには強そうだけど、HTML みたいなテンプレート形式にはどうなるのだろうか。今後が気になる。

2019年12月18日水曜日

フリゲ紹介: 引きこもりの錬金術師

引きこもりの錬金術師 は、タイトル通り引きこもりの錬金術師モニカが、様々なクエストをこなしていく育成+探索+錬金 RPG です。 RPG アツマール 上でもプレイできる。



仕送りを絶たれたモニカはお金を稼がなければいけなくなりました (左下)。 主人子モニカは引きこもりなので、当然自宅からは出られません。 素材集めや敵の討伐は仲間任せ。 モニカは常に自宅から様々な指示をすることになります (右下)。



仲間たちには電話で指示を出して、素材を集めてきてもらいます。 集めてきてもらった素材を自宅で合成し、装備を整えて、メインクエストを攻略していくようなゲーム進行となります (左下)。 シンプルなダンジョン探索ですが、割と強敵が色々なところに居て、少し気を使う。 探索し過ぎたり、装備が足りなかったりすると、結構歯ごたえがある。

一番良いなと思ったのが、戦闘バランス (右下)。 仲間のステータスを平均的に上げていくと、たぶん「詰む」ように設計されてると思います。 特に葉月さんがわかりやすいですが、きちんと特性を活かさないといけません。 葉月さんは割と壊れ性能のキャラですが、壊れ性能だからこそ楽しめるところがあり、よく考えられている気がする。



説明には5-10時間と書いてあったけど、私はラスボス踏破まで2時間30分でした。 サクサクプレイで楽しむには良い作品と思いました。

2019年12月17日火曜日

フリゲ紹介: もしも願いが叶うタワー

もしも願いが叶うタワー は、VIPRPG 2019 GW祭 で発表された、デフォ戦のダンジョン RPG です。 2-3時間でクリアできるので気軽に楽しめる作品です。



突如現れたという「願いが叶う塔」に挑戦する、キャロル、魔王、アンデッドナイ、カナエールというちょっと変わった面子で塔を踏破するRPGです (左下)。 いわゆるダンジョン探索 RPG になっています (右下)。



ダンジョン探索自体はシンプルなものですが、至るところにイベントがあって、イベントを楽しむゲという印象です (左下)。 雑魚戦は簡単めですが、ボス戦はレベルをきちんと上げないと難しい。 レベルを上げてスキルを覚えれば、それほど難しくはないけど、ギリギリ感が楽しめるくらいの、ちょうどいい難易度になってます (右下)。 攻撃すればするほどボスがギアが上げていくのは、緊張感があって良かったです。 特にラスボスは想像以上に強くて、白熱しました。 初見だと少し危なかった。



シンプル・イズ・ベストを感じられる作品。

フリゲ紹介: ぽんこつポン子の小冒険

ぽんこつポン子の小冒険 は 30分くらいでクリアできるミニアクションゲーム。 短い時間で楽しむには良い作品と思いました。



ロボットのポン子は頭を投げることができるのが特徴です (左下)。 敵にぶつければ倒すことができるし、頭を踏み台にすることができます。 最初、踏み台にできることに気付かなくて少し時間が掛かりましたが、わかってしまえば、サクサクプレイできる。

唐突に始まる系のゲームで、ストーリーも深くありません。単純にアクションを楽しむイメージ。 ダンジョン内に落ちている鍵を拾って、探索を深めていきます (右下)。



シンプルで面白かったです。あとポン子がかわいい。

2019年12月4日水曜日

PISA から学ぶ幼少期の学習方法

PISA 2018 の資料が公開されていました。 初めて要因分析付きでまとまっていたので参考になりました。 せっかくなので重要と言えそうな幼少期の学習方法をまとめてみました。

読書をしよう (ポイント 6p)

読書を肯定的にとらえる生徒や本を読む頻度が高い生徒の方が、読解力の得点が高い。 中でも、フィクション、ノンフィクション、新聞をよく読む生徒の読解力の得点が高い。
最近の子は YouTube などの動画が大好きですが、読解能力の養成はできません。 読解の基礎力を高めるには、ジャンルは何でも良いので活字を読むべきのようです。 読解のできない子は実際、そもそも本を読む機会が少な過ぎることが多いです。

インターネットは1日30分未満でいい (ポイント 9p)

日本、OECD平均ともに、学校外でのインターネットの利用時間が4時間以上になると、3分野ともに平均得点が低下。
OECD では情報を手に入れることが学力差に繋がる可能性は十分に考えられます。 一方の日本人は情報量が多すぎるので、30分以上見ても効果がゼロに近い。 30分未満でも構わないように見えますし、2時間以上はやらせないほうが良さそう。


まとまってるのはこの 2 つだけですが、日本より安定して学力の高い香港・マカオ・シンガポールなどのアンケートを見ていると、結構面白いです。
  • ネット上でチャットをしている国は学力が高い? (p39)
    • ただし、SNSオンラインゲームは微妙 (p41)
  • インターネットを見て楽しんでいる国は学力が高い? (p42)
子どもの頃からインターネットを見て楽しんだり、コミュニケーションを取っている国の学力が高いように見えます。 「インターネットを見て楽しむ」と「インターネットは30分未満でいい」を合わせ、さらに「学校外での平日のインターネットの利用時間 (p2)」も合わせて考えると、学力の高い国ではインターネットを自制して使っていることがわかります。 それに対してチリの子はインタネットジャンキー過ぎるような…。

休憩時間などの短い利用は許しつつも、きちんと勉強させている日本の家庭教育は優秀ということなんでしょうね。 でもシンガポールの子はかなりインターネットしてるなあ。 インターネットで実用的な情報を調べる (p44) が高いので、プログラミングなどできちんと使いこなすことも重要ということでしょう。

凄く普通の結論にしかならなかったけど、読書の比率はどんどん下がってきているので、そこが割と大きな差になるかも知れません。


追記: もっと詳細な記事が出てきた。良かった。 日本のレベル 1 の層をどうするかですが、私は進度を戻してでも再学習するべきと思ってます。

2019年12月1日日曜日

CGI + Python で画像を添付したメールを送る

CGI で画像を添付して Python でメールを送るサンプルを置いておきます。

なんだかんだモックを作るときに CGI はとても便利です。 ただメール送信も CGI も自発的には使わなくなってきてサンプルを見つけるのが面倒になってきているので、残しておきます。 昔だったらこういうのは Ruby で書いてたけど、最近は Python のほうが楽かも。

# -*- coding: utf-8 -*-
import cgi, ssl, textwrap, base64, smtplib
from email import encoders
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
from email.utils import formatdate


ACCOUNT = 'foo@bar.com'
PASSWORD = 'hogefuga'

def create_message(name, img, to):
    message = textwrap.dedent('''\
        {name}さん、こんにちは。
        ''').format(name=name).strip()
    msg = MIMEMultipart()
    msg['Subject'] = "タイトル"
    msg['From'] = ACCOUNT
    msg['To'] = to
    msg['Date'] = formatdate()
    body = MIMEText(message)
    msg.attach(body)
    attachment = MIMEBase('image', 'png')

    # https://www.lisz-works.com/entry/python-base64-incorrect-padding
    # base64 不足文字を補完
    img += '=' * (len(img) % 4)

    attachment.set_payload(base64.b64decode(img))
    encoders.encode_base64(attachment)
    attachment.add_header(
        "Content-Disposition", "attachment", filename='capture.png')
    msg.attach(attachment)
    return msg

def send_email(msg, to):
    smtp = smtplib.SMTP('smtp.gmail.com', 587)
    smtp.ehlo()
    smtp.starttls()
    smtp.login(ACCOUNT, PASSWORD)
    smtp.mail(ACCOUNT)
    smtp.rcpt(to)
    smtp.data(msg.as_string())
    smtp.quit()

def check_parameters(form):
    if 'name' not in form:
        return False
    if 'to' not in form:
        return False
    if 'img' not in form:
        return False
    return True



# name = '山田 太郎'
# to = 'hello@world.com'
# img = ''  # base64に変換したものを適当に
# msg = create_message(name, img, to)
# send_email(msg, to)

form = cgi.FieldStorage()
if check_parameters(form):
    name = form.getvalue('name')
    img = form.getvalue('img')
    to = form.getvalue('email')

    msg = create_message(name, img, to)
    send_email(msg, to)
    print("Content-Type: text/html\n")
    print("OK!")
else:
    print("Status: 400 Bad Request\n")


クエリパラメータで、 name = [氏名] & to = [送信先] & img = [画像データ] を CGI 経由で POST で受け取り、Gmail でメール送信する例です。 画像データは、<input type="file"> や canvas.toBlob() を FormData.append() すると良いでしょう。 画像は昔なら base64 化して送ってましたが、今は canvas.toBlob() が良いです。

ちなみに Gmail でこのスクリプトを動かすには、Google アカウントの セキュリティ設定 から、アプリパスワードの設定が必要です。

2019年11月24日日曜日

フリゲ紹介: 魔法使いの楽園

魔法使いの楽園 は、月に一度しか外出できない箱入りお嬢様が世話係をぶっ倒して城の外に出る物語。 ADV+アクションが融合していて面白い作品と思いました。



内容としては、箱入りお嬢様エリカが城下町でたまたま目に止まった男性に会うために、城を抜け出すゲームです (下)。 世話係マークの妨害を振り切り、時にはぶっ倒してでも会いに行きます。 こういうの、フリゲにはありそうでなかったような気がする。



戦闘はシンプルなアクションですが、これも結構面白い (下)。 様々なイベントで戦闘が発生しますが、必殺技の撃ち方などでかなり難易度が変わるので、意外と歯ごたえがある。



特に面白いと思ったのが会話部分 (下)。 イベントを発生させるためにも色々な会話を聞く必要がありますが、見ていてかなり面白いのでまったく飽きなかった。 これだけ面白い文章を作るのはなかなかに凄いと思いました。



最近プレイした作品の中で一番面白かったです。まだまだ面白い作品が眠っているなあ。

2019年11月17日日曜日

研究者 2.0 が来ている?

研究者 2.0 はすぐそこまで来ている? と感じるニュースがありました。 これらはじょじょに増えてきているかも知れない、新しい研究者の形です。 まず日本の研究者の待遇はたいてい悪いです。 しかし「研究できる環境」があまりにも少ないため、足元を見られて買い叩かれやすいのが現状と思います。 研究者が仕事を全うできる資金を与えられない以上、そもそも契約すべきではないし、研究はすべきではないとも言えますが、実際にはなかなか難しい。 「研究者にこだわり過ぎるのは足枷」というのは、私自身も感じていたことですが、じょじょに新しい風が吹きつつあるように思います。

特に勝手にラボを作っている方が増えているのは知りませんでした。面白い。 私が フィンランドに学ぶ PISA と次の教育 に書いたことを、まさに実現しているのかも知れません。 研究者 2.0 とも言える時代はすぐそこまで来ているのかもしれません。 日本の感覚はもう当てにならないですが、中国はもうこんな感じ。 これができる研究者どれくらい居るかというと、ほとんど居ないかと思います。突き抜けた人はどこにいようと本当に凄い。

日本で一番最初に、大々的にこれを始めたと私が思ってるのは、PFI です。 創業者の岡野原さんは東大の教授になることは容易であったと思いますが、ベンチャー企業の PFI を設立しました。 フリーではなくベンチャー起業ですが、これも裏にあるのは資金獲得や自由度が理由だったのではないかと思います。 今や PFI は資金潤沢な、大きなベンチャーになりつつあります。 そして同じような理由からと思いますが、IT 業界では大企業からベンチャーにという流れも、多社契約フリーランスという形も、少なからず出てきました。 PFI のように大きくするのは大変なので、フリー研究者というのは、次の研究者の在り方として最も普及しそうなスタイルと思います。

フリー研究者も大学より優れている点が色々あります。 まず契約時に、研究が必要なのか、発表が必要なのか、特許が必要なのか、などなど明確に交渉でき、必要資金がクリアになります。 そのため国や大学の意向でねじ曲がり、まず間違いなく不足する資金分配より、ずっとクリアになる。 これだけでも凄い大きな利点ですし、互いに良い関係にもなります。 本来であれば大学は、講義や入試、指導などのコストを研究者にさらに掛けるので、この金額以上の資金を提示できないといけませんが、なかなか難しいと思います。

PFI ができた時もこれが次の流れなのかなと子どもながらに驚いたものですが、 フリー研究者が普及すると、ベンチャーになるのは難しい個人レベルでも、光明が指してきたのかも知れません。 研究者が本来受け取らなければならない資金を、適切に受け取る機会があるというだけで、とても良いことに感じます。 機会ができることで、明確な相場ができますから。 大学の在り方も、ようやく変わるのかも知れませんね。 研究者はフリーに、教育者は大学にという流れが進みそうです。


ただ忘れてはいけないと思うのが、完璧な実力主義の世界であるため、教育のための研究は通じなくなると思います。 もっと実務的な研究能力が求められるはずです。 そしてマーケティング能力、広報能力、資金獲得能力が、より重視されることにもなりそうです。 企業も新卒研究者よりフリーのほうが良いという判断もしやすくなりそうだし、じょじょに色々な変化が起きていくのかも知れません。

大学も籍を置くメリットが色々あるので、どちらが良いかとは簡単に語れません。 そもそもこの現象の根底にあるのは、教育分野がきちんとした分業ができていない問題も、少なからずあるでしょう。 海外のように入試を第三者非営利機関がきちんと行って、研究の重要性が認識されれば状況は変わると思いますが、なかなか難しいでしょうね。

2019年11月11日月曜日

FlashFox: Android で Flash を簡単に使えるブラウザ

Web では Flash が根絶されつつある昨今ですが、 Flash の遺産は大きく、Flash でなければやりにくいことはたくさんあります。

デスクトップはまだしもスマホ/タブレットは本当に困る時があります。 iOS/Android で Flash を動かすには、昔から以下の 2 つの方法が知られていました。 Puffin Web Browser は設定不要ですが、外部レンダリングでレスポンスが遅い問題があり、ゲームなどには向きません。 また 2019-07-01 から Apple Store のポリシー変更が理由で、無料版の iOS サポートが終了するとのことですドルフィンブラウザ は iOS/Android どちらでも使え、独自レンダリングではないので高速に動きますが、設定が煩雑なのがつらい。 もっと良いものはないかと探していました。

そんな中ふと目に止まったのが、FlashFox です。



FlashFox はページをカチャカチャするとよく落ちるけど、Flash の単一ページを開くだけなら普通に使えます。 何も設定しないでも Flash が使え、外部レンダリングではないため高速に動作するのが良いところ。 有料版もあるようですが、リンクの無料版で特に困ってません。 Flash でしかできないことが HTML5 に対応するまで、Android ではこの FlashFox は使っていこうと思っています。 (永遠に来なそうで困ってる…)

Android で Flash が動かなくて困っている人にはおすすめできそうなブラウザです。

2019年11月10日日曜日

ripgrep + fd + sd + vim で高速な grep & replace

grep & replace って利用頻度が高いわりに、意外と大変です。 最近、sd という高速な置換ツールがあることを知り、 みんなご存知の vim & ripgrep、そして fd と組み合わせると高速かつ快適な grep & replace ができることがわかったので、その方法をまとめます。

まず vimmer の人は vim の標準機能を使い、以下のコマンドで grep & replace している人が多いのではないでしょうか。
:%s/foo/bar/gc       # 編集中のファイルを grep & replace
:'<,'>%s/foo/bar/gc  # 選択中の文字列を grep & replace
q:                   # コマンド履歴から置換コマンドを復唱

# 複数のファイルを grep & replace
:args **/*.csv                 # 置換対象を決定
:argsadd ./*.html              # 置換対象を追加
:args                          # 置換対象を確認
:argsdo %s/foo/bar/g | update  # 対象を置換
grep だけなら fzf.vim と組み合わせて、以下の機能を使っている人も多いでしょう。
:Files    # ファイル検索
:Rg foo   # ripgrep で 高速な grep
:History  # ヒストリ検索


さて本題。fd / sd を使う場合、以下のようにすれば、高速に grep & replace ができます。
:!sd foo bar %       # 編集中のファイルを grep & replace
:'<,'>!sd foo bar %  # 選択中の文字列を grep & replace
q:                   # コマンド履歴から置換コマンドを復唱

# 複数のファイルを grep & replace
:!sd foo bar $(fd -e csv)
:!sd foo bar $(fd -e csv && fd -e html)
sd コマンドで grep & replace をすると、コマンド履歴に :!sd ... という検索しやすい形で残ります。 これが地味に便利で良いです。

2019年11月8日金曜日

工作用の通販サイトまとめ

最近、電子工作だったり様々な工作をしていて、小物を発注する機会がとても増えています。 小物は安く買おうとすると送料との戦いになるので、なるべく安くするための EC 通販サイトをまとめてみました。 なお私が使う可能性のあるところだけです。

名前基本送料送料無料特徴
Amazon0円〜0円〜品揃え豊富、小物が見にくい
ヨドバシカメラ0円0円小物系は強い、掘り出し物あり
共立エレショップ280円〜7500円以上掘り出し物多数、品揃え豊富
MISUMI-VONA0円0円事業者用途のみ
ビックカメラ0円〜0円〜全体的に高めなので一品買いに
アスクル330円1000円以上掘り出し物あり
送料無料の基準が嬉しい
エレコム
ダイレクトショップ
550円2200円以上パーツ系の小物と言えばエレコム
スイッチサイエンス150/500円3000円/1万円以上ここしかないもの多数
モノタロウ500円3500円以上ここしかないもの多数
品揃え豊富
秋月電子通商500円1万1000円以上ここしかないもの多数
品揃え豊富
マルツオンライン350円〜3000円以上少し高めだけどポイントあり
送料無料の基準が嬉しい


経験論として工作系やパーツ系の商品を買うときは、ググっても良いものは出てこないです。 EC サイトごとにチマチマ比較したほうが確度が高い。 私は Amazonヨドバシカメラ共立エレショップの 3 つは最初に必ず見ています。

この3つで良いものがなければ、諦めて他のECサイトで買います。 MISUMI-VONA は買ったことないけど、事業用途なら送料無料らしい。 スイッチサイエンス秋月電子通商モノタロウ は、ここにしかないものが多過ぎるので、よくお世話になる。 テーブルに書いていないものでは、Google ショッピングメルカリ などのフリマアプリは見る事もある。 海外から輸入される方もいますが (下記参照)、私は利用したことがないです。

参考:

2019年11月1日金曜日

フィンランドに学ぶ PISA と次の教育

フィンランドには医学の塾があるという話をたまたま見つけて、これは次の時代を示しているんじゃないか、と感じました。 記事の中に書かれていたのですが、フィンランドは PISA の点数が高くて教育のレベルが高いと思われている国である一方、分数を理解している子は全体の 2 割しかいないらしい。 本当に驚きました。 そしてフィンランドで起きていることは、良い意味で日本でも起きるのではないかと、感じてしまいました。



PISA と教育の現状は一致しない

この話をするためには、まず第一に PISA について語らないといけません。 PISA は国際学力テストで、日本でも重要視されている指標に思いますが、私は PISA については昔から疑問視しています。 なぜかというと、ゆとりとは言えロートルな教育を受けた身からすると、最近の小学生は「平均的に見れば」明らかに算数/数学に課題があることが増えています。 大学でも高校の内容を教えるようになった。 決めつけはよくないし、代わりに伸びたこともたくさんあるけど、こればかりは感じざるを得ない。 最近ようやく「社会人や中学生が小学3年のところで躓いているケースが多い」という情報で報じられるようになりましたが、ずっと前からこの問題は起きている。 しかし PISA ではそれを判定できていない。

最近の人はこの基礎能力の低下についてはピンと来ないかも知れませんが、練習量が減っているのが原因です。 昔は当たり前にやっていた重要なことを公教育でやらなくなった結果、ロートルな教育に存在したセーフティネットがなくなってる。 ただこのような「何を改悪してこうなったのか」という感覚を持っている人は年齢の変化で減っていくし、平均が落ちていることに気付かず教育をしていくので、 さらに平均が落ちていく悪循環があり得ます。 というか、かなりの確率でそれが起きていている。

それなのになぜ日本は PISA の点数が落ちないか。私はずっと不思議に思っていました。 これについては良い解答を見つけ、私もこれを支持しています。 フィンランドの大学教授や大学講師の方々が、貴重な意見を記事に書いています。 PISA は日常的な数学知識を測るだけであり、高校以上の力は明らかにならないのです。 PISA の点数が上がったかどうかでわかるのは、中学校の常識レベルがどれだけできているかに過ぎず、大学や職業レベルの競争力の指標としては機能しないのです。 中学校の常識レベルと計算力なども、また少し違う尺度なのかも知れません。とにかく信用し過ぎるのは良くなさそう。


学校 (大学含む) は構造的に学力低下の問題を抱えている

小学校教育の問題 (正確にはゆとり教育ですが) は、小学校だけで済む話ではありません。 多くの大学で高校数学の内容を教えざるを得なくなりました。 高校でも同じ問題は起きており、中学では中学ギャップと呼ばれるものができました。 そして社会人レベルでも小学校教育のツケが出始めている。 ゆとり教育のように基準を一度下げると平均が下がるので、下がった平均に合わせて、試験のレベルも下がっていくという事がよく起きます。 資格試験も同じことが言えて、昔と今ではかなり基準が変わっています。 一番キツイのは大学で、本来は不要な前提知識の解説が必要になる。

そこに人口減少が絡んでくると、問題はもっと深刻になります。 人員確保のためにほとんどの組織でレベルを下げるしかないという問題が起きます。本当に良くない。 トップ層は今も昔も底なしにデキるので関係ないのですが、平均として見るとこの問題は明らかに存在します。 だから平均は上げていかないといけないんですが、現実にはつらいところがある。 この波から逃れたいと考える現れなのかも知れませんが、都内を中心に中学受験が増えています。 他にも公立の中高一貫校化の流れも結構見て取れます。都内と地方の温度差は凄いものがある。 結果として教育格差はどうしても生まれてしまう訳です。

ここまでは既に起きている話。 ただ本当はもう少し先があると思っています。 なぜなら最低でも偏差値75くらいまで突き抜けないと、教育問題の影響をモロに受ける大学の影響をどうやっても受けてしまうんですよ。 偏差値70くらいだと、うーんという感じがします。 中高が高くてもたいていの大学は門戸を開くために偏差値がガクンと落ちるし、やはり偏差値75とは教育格差がかなりある。 とは言ってもほとんどの人は偏差値75など必要としていないし、本当にひと握りの人しかなれない訳で、残りの人はどうするのかという事になります。 そもそも偏差値自体どうなのよ、と思うこともよくあります。 そんな中、フィンランドは医学でさえ塾があると聞いて、ハッと思いました。

ようするにこれ、医師という一定ラインを超えるに当たっては公教育では不足しているから、塾で学ぶしかなくなってるということですよね。 だから医学に関して最短のパスを用意すれば良いじゃないかと。 もう世界ではそういうところまできてるんだな、と。 欧州は人の出入りが多いし、社会システムの職業決定は厳格なところが多いので、レベルを保つ仕組みは日本より進みやすいと思う。 たぶん日本の先を行った結果がこれ。


人口減少の影響を受けない教育をしよう

PISA や昨今の教育問題を見ていると、そろそろ常識を疑って、新しい教育を考えても良いのかなと思っています。 これは実のところ高校生の時からずっと思っていたけど、当時は代替になるものがなかった。でも今ならある、というのが理由です。 何かを学ぶとき、独学でも塾でも学校でも会社でも良いとは思うのですが、 教育力低下の影響をモロに受ける学校って、トップ以外だと効率悪いんですよ。 昔は板前とか大工とか、早い段階から丁稚奉公をしていたものですが、ほとんどの分野はそれで良いはずなんです。

そもそも大学受験は非効率の塊です。 現代社会で漢文や古文を習う必要はないし、歴史も最低限覚えれば足りる。 そのようなことに費やすより、一芸一点突破すれば良いじゃないかと。 学費も、国立大学/大学院だと年間50〜80万円、私立大学/大学院だと70〜200万円ほど掛かります。 わかりやすいので最近炎上中のプログラミングスクールを例に挙げますが、叩かれてはいるもののスクールの内容が大学を上回っていることは今や多いと思うんですよ。 しかもガチでやったら適当計算でも 1/4〜1/8 くらいのお金で済む訳でしょ。

もちろんトップ層の国立大学/大学院のレベルは素晴らしいと思ってますが、 理論を学ぶのか実践を学ぶのかは大きな違いがあって、プログラミングスクールのほうがすぐに役に立つ。 また大学でサイエンスを学んでも 9 割以上の人が社会人になってサイエンスをしないのは、大学教育の大いなる矛盾です。 しかも最近の大学は、偏差値が下がってくると研究をしていないところが多いので、サイエンスを学んでいない人のほうが多いと思うんですよ。 あと 4年間の中に遊びの要素が含まれているので、密度の高さも違う。 つまりプログラミングで突き抜けるなら、大学よりスクールなのは最初から自然なのです。 昔もこういうのがあったらなあと、正直うらやましく感じますね。

さらにこの変化は日本だけではありません。 世界中でプログラミングの早期学習は始まっているし、大学に対する見方自体も変わってきています。 日本はかなり遅れているほう。 最近は世界の名だたる企業でも大卒の肩書きは不要になり、Googleは博士号を付与する仕組みを作り始めました。 実力重視の世界では、大卒の肩書きは求めていません (ただしビザについては注意)。とても自然と思います。 日本でも大卒の肩書きは既に不要と私は思いますし、プログラミングに限らず、同じことがあらゆる分野で起きるんじゃないかと感じます。


新しい学校の形、知の高速道路

そしてフィンランドの医学塾の話を見ていると、あらゆる観点から人口減少の影響を受け、思惑の飛び交う学校より、 別のものが選ばれる可能性はそろそろあるのではないかと、感じました。 医学でさえ塾として通用するのだから、物理塾や化学塾とかも絶対いけると思うし、 別に塾じゃなくても新しい何かが生まれてもおかしくないと思う。 石神千空キッズだらけになったら凄い面白い世の中になりそうだな。 実際、最近は異世界チートクラスの小中学生がゴロゴロ居て、学校で管理するのもどんどん無理になっています。 そのような彼ら/彼女らを、学校に縛られないよう、とことん伸ばすべきでしょう。 そのためには、あらゆる分野で作られ始めている「知の高速道路」に乗る/乗せてあげることが大切なのだと思います。

そんな訳で、学校は最低限を提供できれば、それで良いと私は思ってる。 ただ算数/数学は文理問わずどんな分野でも必要なので、もっと鍛えたほうが良いんじゃないかなあ。 分数ができないとかは、さすがに問題です。 ただこれに関しては、私立の考え方も面白くなってきました。 最近は算数だけの受験みたいなのも出てきているようで、頭良いなと思ってます。 算数1科目入試は STEM 教育の延長線として、2019年から増えたみたいですね。 算数の難問が解ける=国語もできるし、算数さえ突き抜けてれば、ほとんどの分野で突き抜けられる素養があるからなあ。 色々なところに変化の兆しは既にあるようには感じます。

2019年10月16日水曜日

WineHQ を使って Linux でも フリゲをしよう

WineHQ を使えば Linux でも Windows で動くゲームを楽しめます。

ただ初心者が Linux で WineHQ を使ってフリゲを動かすのはハードルがあります。 素晴らしい記事はいくつかあるものの、1 記事でワンパスが通っていないので、かなり迷う。 WineHQ も進化して設定がこなれてきて楽になってきているため、将来に向けて Ubuntu 18.04 でワンパスを通したメモを残しておきます。


まず WineHQ をインストールします。 WineHQ はもともと Wine という名前でしたが、名前が変わりインストールの仕方も変わりました。 公式の手順 を見たほうが安全ですが、現時点では以下でできます。 今回利用したバージョンは 4.0.2 です。 (追記: 最新の 5.0 も確認したけど、だいたい同じ感じ)

Ubuntu 18.04

sudo dpkg --add-architecture i386
wget -nc https://dl.winehq.org/wine-builds/winehq.key
sudo apt-key add winehq.key
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'
sudo apt install --install-recommends winehq-stable
次に Winetricks をインストールします。apt でも入れられるけど、今は手動インストールが推奨されています
cd "${HOME}/Downloads"
wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks


Ubuntu 20.04

ちなみに Ubuntu 20.04 ではもっと簡単になったみたいで、以下だけでいけました。
sudo apt install wine winetricks


WineHQ / Winetricks をインストールしたことで Windows のソフトを動かす最低限の準備は整いました。 次に Winetricks を使って RPG ツクールを動かすために必要なライブラリをインストールします。
sudo apt install cabextract  # directmusic/dsound に必要
# 全般
# winetricks allfonts  # 重いので以下のほうが良いかも
winetricks fakejapanese_ipamona
winetricks d3dx9
# 音源
winetricks quartz
winetricks gmdls
winetricks dmsynth
winetricks directmusic
winetricks dsound
winetricks devenum
たいていのゲームに使われてるライブラリは上記と思います。 ゲームごとに必要なライブラリが異なるので、動かなかった場合は以下のサイトを参考にして、ライブラリを追加してください。 とても詳しく書かれている。


次に MIDI を聴けるようにします。 MIDI は最近あまり使われなくなっていますが、フリゲと言えば MIDI なので、まとめておきます。

まずは Timidity や FluidSynth / Qsynth といったシンセサイザーをインストールした上で、サウンドフォントをインストールします。 シンセサイザーは私が動かせている Qsynth だけ説明します。Timidity / FluidSynth の設定の仕方がわかる方、教えてください。
# sudo apt install timidity timidity-interfaces-extra
sudo apt install fluidsynth qsynth
sudo apt install freepats fluid-soundfont-gm fluid-soundfont-gs
フリゲで MIDI を再生するためには、インストールするだけでは駄目で、Wine のレジストリ設定が必要です (参考)。 Qsynth を使う場合は以下のように設定します。
wine reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Multimedia\MIDIMap" /v "CurrentInstrument" /t REG_SZ /d "Synth input port (Qsynth1:0)"
レジストリの "Synth input port (Qsynth1:0)" が重要なところで、このポートにアクセスすることで MIDI を再生することになります。 そのため Qsynth 側でも対応する設定が必要になります。具体的には Qsynth を起動して以下の設定をしてください。



ここまで来ればだいたい設定完了です。 あとは RPG ツクールなどのランタイムをインストールしましょう。 そして Qsynth を起動したままにしてフリゲを実行すれば、MIDI も聴けるし、だいたいのものは動きます。
# RPGツクールのランタイムをインストール
wine RPG2000RTP.exe
# ゲームをインストールした後に、exeファイルを実行
wine RPG_RT.exe


だいたいのものは動く感じで、Nepheshelイストワール は気持ち良く動きました。 他には ここ のリストを参考にして、片道勇者天使のうつわ を確かめてみたところ、何の問題もなく動きました。ただ ふしぎの城のヘレン はうまく動かなかった。独自ビューの表示に何を使ってるかわかれば動きそうだけど、すぐにはわからなかった。

あと気になってる問題として、MIDI / MP3 なら大丈夫だけど WAV ファイルの音が出ない問題がある。 たとえば メイジの転生録 など。ヘッダを弄るパッチを当てたり、サウンドドライバを ALSA にして GStreamer をほにゃららすればできそうな気がするけど、いまいちよくわからなかった。 解決できる神の登場が待たれます。

動かない時に何が必要なのかわかりにくいのは難点ですね。 知見が共有されてくるともっと遊びやすくなりそうなので、安定利用にはもう少しというところでしょうか。

2019年10月11日金曜日

イギリスに学ぶ日本の影の金利

日経新聞で影の金利なるものを知ったので、少しだけ調べてみました。 影の金利は「量的緩和の下で採用された政策と同様の効果を政策金利の低下によって実現した場合における政策金利の水準」を推定したものであるらしい。 「緩和効果をすべて利下げに置き換えたらどうなるのかを示す指標」のほうがわかりやすいかな。 原文は論文巡りをしないと完全理解できないので、色々な日本語のサイトを参考にさせて頂いて、ほんのり理解に留めました。

まず影の金利による結論から言えば、米国が合理的な数値にコントロールしているのに対し、EUと日本はコントロールできていない。 特に日本は金利とのギャップが酷く、政策金利が-8%くらいのレベルまで量的緩和をしている。 実際にそんな金利にすると銀行が大変な事になるので、金利は大きく動かさず、日銀当座預金残高を増やして量的緩和を広げていますが、うまく行っているようには見えない。 これには色々な要因が絡み合っているし簡単ではないし、一言でも語れません。

私の解釈では、ほとんどの統計は計算方法の問題があり、統計は「こう計算すれば良い」と勝手に解釈できる余地が大きいと思ってます。 たとえばデフレータの計算は、庶民の意識に相当したものになっているかどうかが凄く大事だと思う。 その解釈が合っているかの検証になるのが、影の金利とも言え、このような検証に足りる精度を測定して運用することが、統計の運用だろうと思います。 アメリカの統計は理論と実践から検証してもだいたい正しく、そのためアメリカの統計で逆推定する記事もちらほらあって、私もそちらのほうが正しいと思ってる。 基幹統計も解釈次第で天と地ほど状況変わるから。


とは言え、この影の金利はどうするべきなのでしょう。もしくは他国はどうしたのでしょう。 影の金利関連の記事から辿って NZ 中央銀行のデータを見ていて、イギリスのグラフが気になりました。 回線の影響で重いため引用します。最新データは原文をどうぞ。 イギリスも影の金利が瞬間的に-8%まで行ったものの、今では0%付近に調整されている。 イギリスは日本と割とよく似た国であるため、参考になるのではないでしょうか。



イギリス復活 (?) の要因が何であったかはとても重要なことに思い、色々と調べてみました。 イギリスは2011年くらいまで労働組合の解体、製造業の海外移転があり、 そして2012年の移民政策の移民人口は影の金利とかなり一致しているように見えます。 移民政策で影の金利がゼロになるくらいまで賃金が変化した結果、影の金利がゼロに近付いたということでしょう。 -8%もの影の金利は政策金利でのコントロールは不可能だし、確かに移民は政策金利より効果が大きい。たぶん。 日本も普通に考えれば同じことが起きると思います。

イギリスは人口6600万人くらいのうち、950万人が移民と言われています。 イギリスの移民人口は毎年20-60万人増えています。適当に均して考えると10年で400万人。 流出人口からすると2倍くらいのペースで変化しているので、10年で800万人くらい変わったのかな。 社会が8%変化するためには500万人必要で、だいたいその数値に収まるし、500万人を超えたくらいで影の金利もゼロに戻ったように見える。パッと見では。


日本はイギリスと異なり慢性的な不景気だし、工業国過ぎる問題があるので、 維持したまま同じことをやると、もっと人が必要な可能性はあります。 仮にそのへんは無視して考えれば、1000万人の移民が必要とわかります。 ただ今のところ270万人しかいないし、10年間で70万人ほどの増加でしかないので、果てしない道程に感じる。

あと金利だけを見ていると見逃してしまいそうですが、移民とブレクジットの関係は少なからずあると思います。 影の金利をコントロールできない EU とコントロールできたイギリス。その違い。 理論だけでなく現実にも目を向けていくとなかなか興味深い。 思いの外、面白い知見が得られて良かったです。

他にも最近割と衝撃的なニュースとして、トヨタが利回り0%の社債を発行するとか。 これも一つの方法かも知れませんが、褒められたものではないと思います。 水面下では気になることが色々起きている。

2019年10月2日水曜日

フリゲ紹介: ぐーたら魔王のギルドライフ

ぐーたら魔王のギルドライフ は、プレイ 100 時間以上を想定した、長編探索 RPG。 プレイの感覚は らんだむダンジョン に非常によく似ています。



魔王が勇者に異世界に飛ばされ、飛ばされた村で不思議なダンジョンに潜り、ギルドライフを送るという、最近では典型的な異世界ものです (下)。 ただとてもよくできていて、やっぱり面白い作品は面白いのだとよくわかる作品です。 最近のフリゲはドットも絵も凄いクオリティですよね…。そして何より面白い。



最近は私も短編のほうが好きになっていますが、そういった層の人たちもよく考えて作られている気がしています。 4 時間くらいプレイした状態での感想ですが、まったく飽きない。 まずはとにかくイベントが多くて楽しい (左下)。イベント自体も面白いし、色々なところにイベントが隠されています。

ダンジョン (右下) に潜ると、7割くらいランダムマップで、3割くらいが固定マップになっています。 基本はランダムマップで、階層ボスやイベントステージなどでたまに固定マップに行けるイメージです。 固定マップも結構な種類があって、作り込みを感じます。



序盤はお金もレベルもないのでコロコロ死ぬのですが、難易度は非常にうまく調整されていて、進行をストレスに感じることはないと思います。 戦闘がサクサクなのもストレスを感じない一因かも知れません (左下)。 バランスもかなり調整されてそう。 仲間もどんどん増えて (右下)、仲間のスキルを活かすとボス戦はとても楽になったりします。



他にも武器を強化したり、素材を集めたり、クエストを受注したり、さまざまな要素がありますが、4 時間くらいだと未知数。 何となくの印象では素材集めは大変そうだけど、普通にプレイするぶんにはそんなに集めなくても良さそうな感じかな? (1.11 でもっと気楽にプレイできるようになったみたい)

完全クリアは遠そうなのでひとまずの感想ですが、ハイレベルな作品なので安心しておすすめできます。 最近は凄い作品がゴロゴロ出てくるなあ。

フリゲ紹介: Fanastasis

Fanastasis は、本編クリアまでに 25-35時間くらいのプレイ時間を想定した長編探索RPG。 とはいえ本編後の追加ストーリーも繋がりが深いので、加えると45-55時間くらいの大作です。 β版の頃からプレイしていたのですが、ついに完成とのことです (2020-11-10)。 とても面白い作品で、プレイ感覚はライトな イストワール という印象です。



唐突に精神空間「牢獄の間」に召喚された主人公が、自分の記憶を探り「真の姿」を取り戻すことを目指す探索 RPG です (左下)。 最初は多くは語られませんが、ダンジョンそのものが自分の記憶に結び付いているようで、探索を深めることによって、プレイヤーも主人公も、ストーリーが見えてくる作品になっている。 探索のマップは固定マップでかなり広いけど、ストレスなく探索できるシンプルな設計です (右下)。 「牢獄の間」から様々な場所へジャンプできるので、探索はかなりサクサク進みます。



割と色々なプレイの仕方ができる作品で、面白いと思います。 シンボルエンカウントで、敵がそこまで襲ってくる訳でもないので、私は途中まで最小戦闘縛りプレイをしていました。 数回だけ最小とは思えない戦闘をしてしまったのですが、たぶんやりくりすれば最小戦闘縛りできるようになっていると思う。

最小縛り的にプレイすると、ひたすら潜って宝箱を集めるゲームになるのですが、十二分に楽しめています。 イストワール のように隠し部屋がたくさんあり、とても面白いです (左下)。 何度プレイしても「あっここ宝箱を取り忘れてた」というのが結構出てくる、深さを感じる作り込みです。 中盤くらいのギミックは神がかってて、凄いと思いました。特に湿地帯。 そして終盤に向かうにつれての熱中度の高さ、素晴らしい。
最低限のボス戦 (右下) はこなしていく必要はありますが、中盤くらいから仲間も増え、探索可能範囲も一気に広がってきて、どんどん楽しくなります。 様々な特性のある仲間がたくさん居て、色々なプレイが楽しめます。



β版でも十二分に楽しめる完成度でしたが、正式版も凄い完成度です。 まずはストーリーの深さ、真相の深さが凄い。 ラスボスを倒して終わりという訳ではなく、その裏にある真相こそがむしろ本編にも思えます。 ここまで深く練り込まれた作品は、そうそうない気がする。 ぜひ自分の手で、真実を見つけてみてください。

大作なので「なんか重要なこと言ってたような…」とか「このへんに開けられない扉があったような…」と、記憶しきれない人もいるかも知れません。 そんな人は、スクリーンショット機能があるので、ぜひ活用しましょう。 「重要そうなことはとりあえずメモっておく」を覚えておくだけで、捗って楽しめますよ。

正式版になって多少難易度が上昇し、強ボス戦ではキャラの使い分けが大事になった感じがします。 たくさん仲間がいるので、メンバー選びも楽しめて良いですね。 私は結局のところ全メンバーを使いました。みんな特色があってキャラ立ちもしています。


ところで Fanastasis ってどういう意味なんでしょうね。 私の予想は fana + stasis で「完全なる合一状態で均衡すること」と思ってます。 物語の目的に合ってるし、これかなあ。

2019年10月1日火曜日

Windows のファイラーを CraftFiler (内骨格) にした

ファイラーはどんな OS でも使うので、意外と重要性の高いツールだと思っています。 Windows 標準のエクスプローラはどんなにマシン性能が高くてもすぐ落ちるので、ストレスが半端ないんですよね。

私は Windows 時代 (昔) に DF の使いやすさに目覚めたものの、Linux に完全移行するに当たって VimFiler の使いやすさに目覚め、 そして久々に Windows をセットアップしようとして、Vim の依存性が増え過ぎていることに困りました。 Chocolatey から VimFiler を使おうとすると以下が必要になる。動くんだけど何かなあ。
choco install curl python pip make mingw neovim
sudo pip install --upgrade pip
pip install neovim


Chocolatey で簡単にインストールできるファイラがないか探したのですが、なかなかしっくりこない。 海外製ターミナルファイラーのほとんどは Linux でしか動かないし、動いても操作性がかなり違うのがキツイ。 ターミナルファイラーはキーバインドで処理するから早い一方で、流派が 3 つくらいあるせいで移行が大変になってしまっている。 念のため書いておくと遥か昔の設定ファイルをコピペしても良かったのですが、色々使わなくなった機能もあり、せっかくなのでモダンなインストールをしたかったのです。

Linux でもともと使っている lf は簡単そうと思い、Windows で確認してみたのですが、 表示が崩れたり、動作に問題があったりして、現状ではまだβ版な感じがします。 fzf で自作ファイラーでも良いかとも思ったのですが、こちらもどうにも動作がおぼつかない。 良いファイラーがないかと思いながら Chocolatey を見ていたら、Cfiler というのがあったので使ってみました。



よくよく見てみると Cfiler は略称で、CraftFiler (内骨格) ではないか。懐かし過ぎる。 せっかくなので色々使ってみたところ、めちゃくちゃいい。凄く使いやすくなってる。 日本製の有名な 2 画面ファイラー (VimFiler、あふだいなファイラーDFPaper Plane xUI) などと比べて良いと思う点は 2 つある。 (1) UI の挙動が完全に安全サイドに倒されていて安心でき、(2) ほとんど何も設定しないで良いところです。

昔だったら Fire File Copy とか FastCopy を頑張って設定したものだけど、今なら CraftFiler (内骨格) くらいの非同期処理が入っていれば十分と感じる。 正規表現で一括リネームできるので、セーブデータの保存に便利で良いです。 キーバインドが複数用意されているのが良くて、あふ風キーバインドは無設定でしっくりきました。 全体的にかなりうまく機能がまとまっている。

あふPaper Plane xUI のほうが高機能だし軽いけど、CraftFiler (内骨格) は Chocolatey で気楽にインストールできるし使いやすいので、今後も使ってみようと思いました。 可能な限り設定をしたくない人には合ってるかも知れない。

2019年9月23日月曜日

Windows 10 の高速化・軽量化設定

中古の Windows ノート PC を買ったので、久々に Windows をセットアップしました。 スペックが平凡なのできちんと最適化しなければならない。 画像だらけの解説は私にはわかりにくいだけなので、設定をなるべくコンパクトにまとめます。

1. まずは Win+Pause でコントロールパネルを呼び出します。 システムの詳細設定 → パフォーマンス から設定画面を呼び出し、「パフォーマンスを優先する」にして視覚効果をすべて切ります。 ただし「スクリーンフォントの縁を滑らかにする」だけは色々なところで使われているので、私は ON にしています。

2. Windows キーで呼び出せるメニューの設定アイコンから「Windows の設定」を呼び出し、以下の設定をします。 Cortana はバックグラウンドアプリの設定をすればメモリ消費が 0 になるので、レジストリを弄る必要はないです。
Cortana → すべて OFF
簡単操作 → Windows でアニメーションを表示する → OFF
  Web ブラウザに影響が出る (ex: Animate.css) ので上記は ON にしました。
簡単操作 → Windows の表示に透明性を適用する → OFF
プライバシー → バックグラウンドアプリ →
  アプリのバックグラウンド実行を許可する → OFF
    (CPU が弱いとすごい効果がある)


3. タスクマネージャのスタートアップの項目から不要なスタートアップを停止します。 Intel 関係のもの以外はだいたい停止できるはずです。 Intel 関係も停止はできるのですが、極端に性能が落ちることが多いので、たいていは残しておいたほうが吉です。

4. Win+R で「ファイル名を指定して実行」を呼び出し、「services.msc」と入力します。 ここで不要なサービスを頑張って無効化します。 何を無効化するかは、普段は面倒なので調べたくないのですが、困ったらここを参考にしています。 たいていの PC で不要なサービスは以下だと思っています。

サービス名説明
Connected User Experiences and Telemetry品質向上のための情報収集
Delivery Optimizationコンテンツ配信タスクの最適化
Diagnostics Tracking Service診断追跡サービス
Distributed Link Tracking ClientNTFS ボリューム間のリンク管理
Superfetchアプリの起動高速化
SysMainアプリの起動高速化
Remote Access Connection Manager自発的なダイヤルアップと VPN
Windows SearchWindows の検索機能


ここまでの設定で使用メモリはだいたい 1.4GB になって快適になります。 スペックが低い場合はメモリより、CPU/ディスクの使用率が 0% に近付くことのほうが効果は大きいです。



次にアプリのインストール。 最近は楽になってきて、ChocolateyKeySwap だけ手動で入れてます。 今回はフリゲ専用 PC なので、以下のコマンドで最小構成のアプリをインストールしました。
choco install sudo
choco install googlechrome dropbox cmder notepadplusplus vlc fzf 7zip cfiler

インストール中に Chocolatey で一番驚いたのは unzip です。 Linux だと unzip -O cp932 test.zip のように -O オプションが指定できるのに、Windows 版の unzip はこのオプションが削られていてキツイ。 Chocolatey では 7zip を使うのが王道のようです。

他には Chrome は実験機能を ON にすると、非推奨ですがメモリ消費が押さえられたりします。 動画くらいは見たいので、コーデックの要らない VLC Player を入れてます。 普段は CraftFiler で過ごせば、まあまあ軽量な日々を過ごせます。

フリゲ専用 PC としてはこれくらいの設定で満足してます。

2019年9月22日日曜日

中古 Windows ノート PC が最高だった話

初めて 価格.com で中古ノート PC を買いました。 以前書いた記事で、中古ノート PC は Windows ノート PC を買うには良いかもと書いたので、実際に試してみました。 結論から言えば、かなり良かったです。

今回の購入に当たっては、もともと Windows ノート PC が近々ご臨終の気配があったので、1 台必要という背景がありました。 しかしフリゲ以外には使っていないので、手元の最弱 PC と同程度のスペックがあれば十分でした。 新品を買う理由がそれほどなかったのです。 色々な中古サイトを見た結果、価格.com の 中古ノートパソコンのページ で探すと、 安定して安かった上にバリエーションも多く、スペックの比較が楽そうでした。

楽とは言っても、価格.com の 中古ノートパソコンのページ は CPU の表記が甘いので、ちまちまページを開き、ベンチマーク (たとえば CPUBoss) を見ながら判断する必要があります。 そして中古なので、どのような欠陥を抱えているかはきちんと見る必要があります。 多少の手間は掛かりますが、きちんと見ていけばちょうど 1 万円でも良いものが結構あります。 たとえば Core i3 3120M、メモリ 4GB、HDD 500GB で 1万円は、まあまあの気がする。 私が買ったのはこのスペックです。

新品のノート PC よりスペックが良いもののほうが多いくらいだし、値段は 1/10 以下のケースもある。これはひどい。 中古だと HDD が一番不安なのですが、仮に HDD が腐ってても 1万円くらい払えば交換できます。 つまり地雷を踏んでも十分に安いという。まあもっとボロボロだと、どんどんお金掛かって困るけど。 酷使して打ち棄てられた PC をちゃんとチェックして、細かな交換をしているかどうかだよなあ。


実際に使ってみないことにはわからないので使ってみました。 感想としては、とても良いです。キーボードの見た目には多少の使用感はあるものの、他はほとんど新品。 念のため怪しげなものがないかも確認してみたけど、特になさそう。 OS 再インストールの時に使ったのかも知れない OpenSSH などがあって、サービス停止されていたけど、これを完全停止しておいたくらい。

分解してみて思ったけど、もしかすると HDD は中古に換装済みかも知れない。 そういう情報も載っていると嬉しいけど、特に載ってはいなかった。 業者としても換装して転売しやすいものを取り扱うのは理に適っている。 買う側としても、いざ駄目なときに換装しやすい若干大きめのモデルのほうが安心感がありそうだ。

購入直後の状態でベンチマーク (CrystalMark) も走らせてみましたが、悪くない。 一番気掛かりだった HDD も腐っているか CrystalDiskInfo で確認してみたけど、こちらも悪くない。 一番安い値段の中で一番良いスペックを買うことしか考えていなかったので後で気付いたけど、ベンチマークは 以前 4 万円で購入した最弱 PC より強い じゃないか (号泣)



ハードウェアの健康データをきちんと開示していけば、中古市場は結構強いかも知れない。 ゴミだと SNS ですぐバズる時代になったので、かなりしっかりしている。 最近の CPU やメモリの性能は、減価償却率に対してまったく追いついてこれなくなっているから、中古市場が栄えるのは当然かも知れない。 これからは中古で買おう と思いました。 ちょっとした開発用端末なら、1万円で十分です。少なくとも私は余裕。

追記: 自分用メモですが、ワイヤレスカードや Bluetooth は非搭載が多いです。 最近だと意識せずとも付いてくるものが、1万円だと付いてないことは多いため、ハードウェア構成には注意です。 少しパーツ買えば結局のところ安いし、まったく問題はない。

2019年9月15日日曜日

フリゲ紹介: 魔機人形と棄てられた世界

魔機人形と棄てられた世界 は、RPGアツマールでも遊べる、リアルタイム戦略ゲームと探索 RPG と、アクション RPG が融合したような作品。 様々な要素が融合していて、似た作品は少ないです。近いのは 滅亡世界戦姫千騎戦記 でしょうか。 同作者様の作品として、人類滅亡後のPinoccia (ピノキア) も名作ですが、今回も凄い完成度でした。



いきなり始まるタイプのゲームで最初は主人公の目的なども明確になっていませんが、探索を進めることで、じょじょに明らかになっていきます。 今回のストーリーの中心にいるのは図の魔機人形 (左下)。 前作とは異なり拠点があるのでリソース管理などはなく、地道にゆっくり素材を集め、武器やアイテムを作ることで魔機人形たちを強くしていきます (右下)。 素材集めはストレス溜まりやすい傾向があると思いますが、ゲームバランスがとても良いのでまったく苦にならなかった。



探索はアクションで、主人公は一切攻撃ができません。 A キーで素材を集めたり、後方支援を行うことはできますが、魔機人形たちに S キーで移動ポイントを指示して敵と戦ってもらいます。 図では 1 人だけですが、仲間はどんどん増えていきます。わちゃわちゃーと動いてかわいい。 だいたい S キーだけで済むというシンプルさが良いですね。シンプルですがとても面白いです。 ダンジョンの作り込みも凄く綺麗だし、Nepheshel とよく似た感じで隠し部屋にお宝が隠されていたりして、細かいところに凄く凝っている。 作者様曰くイストワールに影響を受けているとのことです。



人類滅亡後のPinoccia (ピノキア) でもストーリーが非常に良かったですが、今回もとても良かった。 探索を進めていく中で、共感を持って見ることができるというのは重要だと思ってて、そこが凄く上手いと感じます。 ADV などのストーリーが絡んだ作品は、私はどうしても話の整合性が気になってしまうのですが、 中盤くらいで「なんか整合性合わないかも?」と思わせたところを終盤できっちり回収していたり、その他にも「もしかして?」と思ったところに話を繋げてきたり、凄くきっちり考えてるなあと感じました。

クリアまで 10 時間くらいのボリュームがある作品でしたが、一気にプレイしてしまいました。おすすめです。

2019年9月12日木曜日

フリゲ紹介: ヴァーミリオンの青空

出遅れましたが、今年もウディコンの上位20作品をすべてプレイしました。 毎年面白いものがたくさんありますが、今年はライトな作品が多めなので、時間のない方もたくさんの作品を楽しめると思います。

おおまかな印象としては、既存のゲームの仕組みを色々と組み合わせ、改良してみた作品が多くて新鮮でした。 1 位: エディの人間大砲、6位: 取材、お布団敷き、謎解き、11位: サラと不思議な物語、13位: ポルト・ガーディア、18位: 夜を歩く などでしょうか。 どれもありそうでなかったシステムで、特にポルトガーディアはこういうのもあったかと驚きました。

雰囲気の良い作品も増えてきていて、3位: PRESS START、12位: 星紡ぎ、19位: 虚構の君と夢遊病者のしゅうまつ など、趣向を凝らした作品も多かった。 どれも短編ですが、個性が出ていて印象に残る作品ばかりです。


単純な面白さでは 2位の ヴァーミリオンの青空 が群を抜いていたと思っており、私のイチオシはこちらです。 他には 12位: 星紡ぎや、3位: PRESS START、17位: ケルリート -Littlewitch of Kelritos- が特に面白かったと感じた作品でした。

PRESS START の作り込みは凄いです。 最近は探索+ADVが組み合わさったような作品の作り込みが凄くて、ADV の進化も凄いなあと感じています。 星紡ぎのような雰囲気ゲームも私は好きです。 システムもシンプルだし面白い。 ケルリート -Littlewitch of Kelritos- は探索 RPG が好きなので、やはり入ってきます。



さてイチオシの ヴァーミリオンの青空 についてです。



唐突に始まり、じょじょに思い出していくタイプの、アクションゲームです。 システムはシンプルで、マップに散らばっている羽を集めたり、宝箱を開けることで、じょじょにパワーアップしていきます (左下)。 宝箱を開くと昔の回想を見ることができ、自分自身のことがわかってきて、特殊能力を思い出します (右下)。

とてもシンプルなシステムで、操作性が良く、ユーザ体験が素晴らしい。 羽を集めることでじょじょに飛べるようになっていくのは、成長している感があってとても良かった。 最初飛べなかったのが、飛べるようになるのって、良いものですね。



ボス戦ももちろんあり、難しめです (左下)。 難易度「ゆるい」なら余裕を持ってクリアできますが、とあるボスは「ふつう」だと私には厳しめで、難易度を下げてプレイしました。 ただ上手い人なら「ふつう」でもクリアできそうな難易度には調整されていて、全体的にバランスは非常に良かったです。 アクションゲームとして、とてもレベルの高い作品だったと思いました。 システム面でも、一度セーブした場所にジャンプできるような機能があって、スムーズにプレイできます (右下)。

たくさんの作品を公開されている作者様なので、他の作品もいずれプレイしたいです。



2019年のウディコンも、たくさん面白い作品を楽しめて、とても良かったです。