家族のイベントを共有 Google Calendar で管理し、予定を Slack のチャンネルに流すために Make を使った

結論 類似した記事にしたがって、Make のシナリオを書きました。 モチベーション 子供が大きくなると子供の予定も複雑になります。今日はプール道具を持っていくとか、今日は体操服を着て幼稚園に行くとか。あるいは早めに迎えに行くとか。今までは Google Calendar で共有イベントを作って管理していました。 今は母と同居していて、母にもいくつかの予定は共有したいです。母にも Google Calendar を見てもらいたいので、共有カレンダーを作成しました。ただ、毎回見てもらえるかとか不安があるので、ついでに Slack に予定を自動で流せないかと調べてみました。 Slack アプリは使えない 結論から言うと、Slack で Google Calendar の共有カレンダーの予定を特定のポストに流すのは、現在 Slack アプリ単体ではできません。Google Calendar for Team Events という Slack アプリが現在サポートが止まっていて、新規にインストールできません。 https://slack.com/intl/ja-jp/help/articles/360047938054-Slack-%E5%90%91%E3%81%91-Google-Calendar-for-Team-Events Google Calendar for Team Events は廃止される予定です。 現時点では、廃止は更なる通知があるまで一時的に停止されています。最終的な廃止日がわかり次第、詳細をお知らせします。Google Calendar for Team Events との既存のインテグレーションはこれまでどおりに機能しますが、ワークスペースにこのアプリをインストールしたり、設定を新規作成したりすることはできません。 実際、使っている人でも、挙動がすでにおかしいと言っていたりします。 https://zenn.dev/readyfor_blog/articles/e1e55a8f9d1d8e 2023年1月の2週目あたりから、急にSlackへ通知されなくなってしまいました。 上の slack.com のページには代わりに Google Calendar Slack アプリを使えと書いてあるのですが、こいつは私の要求通りには動いてくれません。 共有カレンダーが使うカレンダーリストに出てこない。 特定のチャンネルに post したりしてくれない。 Google Calendar から Slack に情報を流す方法を探す 別の方法を探しました。[google calendar for team events alternative] と検索しました。 https://zenn.dev/readyfor_blog/articles/e1e55a8f9d1d8e Make を使う https://azospiran.hatenablog.jp/entry/2023/04/06/120816 IFTTT を使う https://www.reddit.com/r/Slack/comments/ya9nm0/google_calendar_for_team_events_alternatives_with/ 開発者コンソールを使うとまだ当該アプリを入れられるよ。おいおい。 上に書いた通り、すでに動作が怪しいのでこの解決策は採用できません。 IFTTT か Make、あるいははじめの記事で参照されている Zapier あたりを試すのが良さそうです。自前で GAS を書いてもいいのですが、Google authentication と Slack authentication を管理するのが面倒そうだなと思いやめました。 Make を使ってみる 先例に習って Make を使ってみることにしました。 まず探したところ Make のこのテンプレートの説明がそのままだったんですが、想像していた挙動と違いました。こいつは Google Calendar を Watch Event するので、新たに作られたイベントが明日のものの場合、それを Slack に通知する、という挙動になります。明日のイベントを昨日以前に作っていた場合、なんの通知もありません。期待した挙動ではありませんでした。しばらく工夫していましたが、望んだ挙動にはなりませんでした。 結局自前でフローを描きました。だいたい以下のようなことを書きました。 - Google Calendar Search Events: - Start Date: {{now}} - Order By: Start Time (ascending) - Singel Events: Yes (たぶん...) - Filter: {{1.start}} less than {{setHour(addHours(now; 24); 23)}} - Slack: Create a Message - Text: {{formatDate(1.start; "M月D日"; "Asia/Tokyo")}} の予定です: {{1.Summary}} ({{formatDate(1.start; "HH:mm"; "Asia/Tokyo")}} - {{formatDate(1.end; "HH:mm"; "Asia/Tokyo")}}): {{1.Description}} これを毎日20:30 に流します。以下のようなメッセージが「予定」チャンネルに流れます。下のものはテストなので別の日付の予定が一緒に流れていますが、本来は一日分の予定が流れます。 よかったところ: 最終的にちゃんと動きました。 「全体をテストする」ボタンがあるので、テストができます。 よくなかったところ: 上にある通り、見つけたテンプレートの説明と挙動が全然違いました。さんざん試した挙句、結局いちから書き直しました。 「このモジュールだけテストする」ボタンは後段のイベントにはうまく動きません。Google Calendar Search events だけテストする、は動いています。しかし、その後の Slack: Create a Message を続けてテストしても、直前のカレンダーの実行結果は入っていないので、空のメッセージが出力されます。 Text format の UI がなにか変です。次に書きます。 Make の Text format UI が良くない Text format の UI がひどく悪くてイライラしました。カレンダーの時間をそのまま出力すると “2023-07-16T02:00:00.000Z” のように人間向きでない表記が出てきます。そのため上記の通り formatDate をタイムゾーン付きで呼ぶ必要があります。しかし 関数や変数は選択パレットから選ぶ必要があります。そうしないと単なる文字列として解釈されます。しかし、選択パレットから目的の関数/変数をマウスでクリックするたびに、それをおくべきテキストのカーソルが一番初めの位置に戻ります。そのまま配置しようとすると関数が行頭に置かれてしまします。さらに関数や変数はカットペーストやドラッグドロップで移動ができないので、間違って配置されたものは消して配置し直すしかありません。 チュートリアルを見たのですが、まず挙動が私のものと全然違って首を傾げます。 formatDate 関数はタイムゾーン付きのものを呼びたいのに、関数パレットから選択されるのはタイムゾーンなしの2引数のものしかありません。そして引数区切りの";" の入力方法がわかりません。結局 formatDate をもう一つ配置してそこから “;” だけ取ってきました。 Text Format を完全にキーボードで手書きできれば良さそうですが、その方法が簡単には見つかりませんでした。 終わりに Google Calendar の共有カレンダーにある予定を Slack の「予定」チャンネルに一日一度流すために、 Make.com を導入しました。期待通りの設定ができましたが、 Make.com の UI が難しくて設定に少し手間取りました。

2023-07-23 · Yu Sugawara

ラップトップの電池が膨張した

ふと見たら私物ラップトップ (DELL XPS 9370) のキーボードがめちゃくちゃ歪んでいました。写真に撮っても気づかないレベルですが、触ると出っ張っていて驚きます。キーボードの下に配置されているバッテリーが膨れているのでしょう。緊急事態なので DELL 公式サイトで対処法を調べました。 バッテリーに関する文書 膨張したバッテリーは交換しろ。はい 互換バッテリーは火災を起こしたり等の危険がある。はい 純正バッテリーは売っていますか? DELL オンラインストアにはありません。うむむ。 公式の交換方法 によると、トルクスネジのドライバーが必要です。iFixitでも同等の説明を確認しました。 ぐっと睨んで、結局 Amazon でトルクスドライバーセットと互換バッテリーを買ってしまいました。8000円程度。

2023-07-17 · Yu Sugawara

Hugo のテーマを乗り換え

Hugo のテーマとして Hermit を使っていました。しかしこれは最終コミットが2020年6月であり、Hugo 0.71.1 の頃のものです。現行は0.110.0 なのでなかなかまずいです。 ところで News には一年以上前の 0.91.2 の情報までしかないんですが大丈夫ですか..? 昨年から気づいていたのですが、面倒で更新をサボってました。 通常の CMS? だとそれでもいいんだろうけど、 Hugo の場合はまだメジャーバージョンが 0 なので破壊的変更がありうるので心配。ちなみにバージョンは 0.71.1 から 0.89.4 まであがっている。 — Yu SUGAWARA (@gusmachine) May 5, 2022 重い腰を上げてテーマの乗り換えをすることにしました。Hugo Themes | blog で上から探します。条件は以下を考えました。 GitHub Stars が300以上ある。 デモがある。 モバイル版でちゃんと見える。 Lighthouse でのパフォーマンスが悪くない。 謎の js,css をロードしていない。 たくさんの web font をロードしていない。どうせ日本語で書くのでフォントは適用されないことが多いので。 Google Analytics 対応。手で入れてもいいけど。 以下のテーマを見ました。 academic : とっても有名。ただ Netlify しない場合の導入方法がよくわからないのと、Netlify は日本から遠いサーバしか居なかった記憶があるので嫌。 clarity: woff2 多い。 bear blog: むしろ何もないやつ. Google Analytics と image support くらいは欲しい。 papermod: これも何もない系。でも機能はある。よく見る価値はある。 hello friend: vercel が遠くてLCP/FID が遅い. あと謎のフォントが多い hello friend ng: デモがない。 jane: 何故か Google Tag Manager 由来でFIDが高い。これ async load されているみたいだから FID に影響を与えているのがよくわからない。 まず、デモのサーバが遠かったり、機能を加えているために遅かったりするのもあって上の条件があまり合理的じゃないことがわかりました。仕方ないです。かわりに適宜 Chrome のネットワークタブと HTML を眺めて適切なものを選びました。 今回は papermod を入れてみることにしました。軽い割に必要な機能はありそうです。 Star もたくさんついています。正しい道は academic をもっと調べることかもしれませんが。 やることはかなり面倒でした。 git submodule add でテンプレートを入れる。 サイトのテンプレートと出力結果を見ながら config.yaml を書き換える。 昔必要だった shortcodes やハックを消す。 GA4テンプレートとか、特殊なイメージ用タグとかを消しました。 RSS が出てそうか確認。 直前の記事が RSS で途中までしか出てなかったことを発見しました。 more tag 中にスペースが入っていました。 hugo で出力した後、URLなどが変わっていないか確認。 デプロイ firebase deployで Failed to get Firebase projectというエラー Analytics が動いていることを確認。

2023-02-19 · Yu Sugawara

[解決済み] Debian Bookworm(testing) で obs が動かない。

Debian Bookworm(testing) をインストールしたラップトップから obs を起動しても何も起きない。コマンドラインから起動すると以下のエラーが出る。 $ obs Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in "" This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb. zsh: IOT instruction obs 「obs qt_qpa_platform wayland」で検索。バグ報告を発見。 I encountered the same error but was able to start OBS after installing the qtwayland5 package. qtwayland5 をインストールしたら解決したとのこと。 $ sudo apt install qtwayland5 $ obs 動いた。 ちなみに qt6-wayland もあるけど開発状況はどんなんだろう、と調べたところこの通り。次のバージョンで移行するそう。 Plan to Upgrade OBS Studio to Qt 6 · Discussion #6481

2022-07-30 · Yu Sugawara

Ubuntu 20.04 でディスプレイマネージャを gdm3 以外に切り替えた時の 'Screen Lock disabled' 警告を止める

Ubuntu 20.04 でディスプレイマネージャを gdm3 から lightdm に切り替えた場合、ユーザの初回ログイン時に “Screen Lock disabled” “Screen Locking requires the GNOME display manager.” という警告が出てきます。これの止め方の解説をします。 前回の、 Ubuntu 20.04 でディスプレイマネージャを lightdm にしたインストーライメージを作るからの続きです。 個人で使う場合は警告は気になりませんが、多数の人に使わせる場合は「この警告を無視してください」といちいち解説するよりは消したほうが良いこともあります。 ちなみに後で解説しますが、スクリーンロックをできるようにしてもこの警告は出ます。 解答 /etc/skel/.local/share/gnome-shell/lock-warning-shown というファイルを作ると、出てこなくなります。 上記の警告は各ユーザの初回ログイン時にのみでます。それを実現するため、警告が出たのちに ~/.local/share/gnome-shell/lock-warning-shown というファイルをつくっています。 そのため、あらかじめこのファイルを作っていれば警告が出なくなります。 警告コードは gnome-shell のこの辺りです。 上にファイル名が見えます。 この挙動はバージョンが変わると動作しなくなると思うので、それはご了承ください。 誤答 スクリーンロックソフトウェアを導入 gdm3 は自前でスクリーンをロックできます。lightdm はどうかというと、 screen lock 機能が消されています。(参考:canonical stackoverflow) そのため、他のソフトウェアを導入することになります。 Lock screen after switching from GDM to LightDM - Perfacilis のようなサイトを巡って適当に導入したのですが、上の警告は消えません。 警告のコードを見てみれば分かると思いますが、canLock関数が DisplayManager のことしか見てなさそうなのでこの方向では警告は消えないと思います。

2022-05-29 · Yu Sugawara

Ubuntu 20.04 でディスプレイマネージャを lightdm にしたインストーライメージを作る

Ubuntu 20.04 の標準のディスプレイマネージャーは gdm3 です。これを lightdm に変えたインストールイメージの作り方を解説します。 前回の、 Ubuntu 20.04 をオフラインでセットアップできるイメージからの続きです。 通常 lightdm をインストールすると、ユーザ向けのダイアログが開いてディスプレイマネージャを選択することになります。ユーザの操作なしに lightdm を選択するには少し工夫が必要でした。 Twitterスレ の清書になります。 Ubuntu 初期設定スクリプト(autoinstall)で gdm3 から lightdm に切り替えようとしている。https://t.co/jX72M8CzWw dpkg-reconfigure で変わるのを確認したので、これを非対話的にやりたい。https://t.co/rI4kugy1Y6 を見つけたがどの方法もうまくいかなかった。 — Yu SUGAWARA (@gusmachine) April 10, 2022 背景 ICPC アジア予選横浜大会で選手が使うコンピュータには Ubuntu がインストールされていて、ディスプレイマネージャは lightdm を使っています。 これには理由があり、今のところ gdm3 に移行できません。 一番良さそうな解法 これが最も簡単でした。 gdm3 をアンインストール, lightdm をインストールし、必要に応じて dpkg-reconfigure lightdm を実行する。 Step1. gdm3 をアンインストールする。 ubuntu-desktop は消しても良い ubuntu-desktop や ubuntu-desktop-minimal をインストールすると gdm3 がインストールされるため、大体の環境で gdm3 がインストールされていると思います。 ここから gdm3 を % apt-get uninstall すると、ubuntu-desktop も道連れでアンインストールされます。実態のないメタパッケージなので、消しても問題はありません。 Step2: lightdm を正しく設定する gdm3 をアンインストールしたのち lightdm をインストールすれば、起動時に lightdm が動くよう設定されます。 あるいは lightdm をインストールしたのち gdm3 をアンインストールした場合、その後に % dpkg-reconfigure lightdm で lightdm を設定し直せば大丈夫です。 ハズレ解法 以下、罠にかかった順番に解説します ハズレ1 lightdm をそのままインストールする。 単純に lightdm をインストールした場合、上に書いた通りユーザ向けの設定ダイアログが開いてディスプレイマネージャを選択することになります。 ユーザの操作ができない autoinstall の最中、gdm3 がインストールされた環境上に lightdm インストールした場合、そのまま gdm3 が選ばれることになります。 ハズレ2 lightdm をインストールしたのち、 gdm3 をアンインストールする % apt-get install lightdm したのち % apt-get remove gdm3 すると、ディスプレイマネージャが選択されていない状態になり、テキストログイン環境になります。 うえの正解の通り % dpkg-reconfigure lightdm を叩けば大丈夫です。 この作業をしていたときはそれに気づかず、テキストログイン環境になったのは ubuntu-desktop が削除されたためではないかと考えたため、正解にすぐたどり着けませんでした。 ハズレ3 lightdm をインストールしたのち、 dpkg-reconfigure lightdm を行う ちょっと調べたところ、Lubuntu 20.10 の安定のため「lightdm」と「xfce4-screensaver」に入替え〈H105〉 - Linux あれこれ に、 dpkg-reconfigure の話が載っていました。実際、% dpkg-reconfigure lightdm を叩くと設定ダイアログが開き、ディスプレイマネージャが選択できます。 しかしユーザ操作ができない環境中では gdm3 がそのまま選ばれます。 「dpkg-reconfigure auto answer」 とかで頑張って検索して Feeding input values to dpkg-reconfigure in a non-interactive way が出てきたものの、以下の方法ではうまくいきませんでした。 DEBCONF_DB_OVERRIDE を利用した方法 $ cat /path/to/config.dat Name: shared/default-x-display-manager Template: shared/default-x-display-manager Value: lightdm Owners: gdm3, lightdm Flags: seen Variables: choices = gdm3, lightdm % DEBCONF_DB_OVERRIDE='File {/path/to/config.dat}' dpkg-reconfigure -fnoninteractive lightdm debconf-set-selections を利用した方法もだめでした。 % echo 'lightdm shared/default-x-display-manager select lightdm' | debconf-set-selections -v 後から考えると、これは例の firebird ではうまくいくかもしれないですが lightdm ではうまく行かなそうです。 あたり1 lightdm をインストールしたのち、/etc/X11/default-display-manager を書き換えてから dpkg-reconfigure lightdm をする Reconfigure the display-manager non-interactively にあることをやったら通りました。 関連コードはここのようです。 https://github.com/canonical/lightdm/blob/170df31f7d9c00b049bdd158682472df915adeae/debian/lightdm.postinst#L15 しばらくこの方法を採用していたのですが、後に gdm3 を消して良いことがわかったので、正解の方法に変えました。 次回予告 lightdm を設定すると、ユーザの初回ログイン時に警告が出てきます。 今度は "Screen Lock disabled" "Screen Locking requires the GNOME display manager." が出てきたぞ。 screen lock ができないことよりこの alert が出てくる方が困るな。 — Yu SUGAWARA (@gusmachine) April 10, 2022 次回はこの警告の抑止方法をまとめました。

2022-05-14 · Yu Sugawara

Ubuntu 20.04 をオフラインでセットアップできるイメージを作る

2022-07-24 追記 最後の実際のコードで、イメージを /target/cdrom 以下に mount する際、実際のデバイスを mount する代わりに mount --bind でパスを複製することにしました。 このほうが簡単ですし、デバイスを二回 mount するのは動かない場合があるためです。 主題 Ubuntu 20.04 をオフラインでセットアップできるイメージを作りました。 必要なパッケージ(ソフトウェア)はイメージを作る際に指定することで、イメージの中に取り込み、セットアップの際に自動でインストールされます。 ICPC アジア予選横浜大会で使用するイメージはこの形式をもとにしています。 Ubuntu 18.04 までの方法が使えなくなったので、代わりの方法を調べました。 背景 Ubuntuのインストールメディアにはパッケージはあまり付属していなくて、セットアップの際に必要に応じて追加パッケージをインターネットからダウンロードしてインストールする仕組みになっています。 インターネットに繋がっていないコンピュータに Ubuntu をインストールする場合はこれでは困ります。 ICPC アジア予選横浜大会 では選手が使うコンピュータを大会で提供しています。 会場のコンピュータはインターネットには繋がっていないので、オフラインでセットアップできるUbuntuのインストールメディアを作って使用しています。 Ubuntu 18.04 までは Community Help Wiki: InstallCDCustomization の記述に従って、追加パッケージを含んだ extras コンポーネントをイメージ内の apt archive に作り、 kickseed で自動インストールスクリプトを与えていました。 kickseed でパッケージを指定すると、追加した extras コンポーネントからもちゃんとパッケージをインストールできました。 Ubuntu 20.04 では Ubuntu Server で Debian Installer が廃止され、代わりに Subiquity というインストーラーが提供されるようになりました。 Subiquity 上で自動セットアップスクリプトを書く autoinstall が提供されるようになったので、スクリプトとイメージの書き方をこれに移行することになりました。 要求仕様 以下のような Ubuntu インストーライメージを作成します。 指定したパッケージがインストールされる。 インターネットのない環境でも動作する。 インターネットのある環境でも動作する。 最後のものは追加仕様です。コンテストに参加する選手向けに、作成したイメージを配布しています。その際インストールに手間取らないよう、インターネットがない環境とある環境両方で動くことを確認します。 autoinstall の基本 説明は他のドキュメントに譲ります。公式ドキュメントはチュートリアルを含め読みやすいですが、説明外のことをしたいときに何もわからないと思います。 Qiita の記事にはとてもお世話になりました。 Automated Server Installs | Ubuntu Ubuntu 20.04をAutoInstallで自動インストールしてみた - Qiita 正解 私が知る限りの正解は2通りです。 正解1 イメージにapt archive を配置し、 late-commands でそれを使うよう設定する イメージの中の適当なディレクトリに apt archive を作成し、late-commands の中でそれを /target/ から読めるようにします。その後 /etc/apt/sources.list を書き換えてそれを指定します。 これを採用しました。我々はイメージに /extra/pool/ ディレクトリを作り、そこに必要な *.deb パッケージを置き、 /extra/dists/focal/main/binary-amd64/ あたりに apt ftparchive を作成しました。その後、late-commands で以下のことを行いました。 /target/cdrom にイメージを再マウント。最後に説明。 echo ‘deb file:///cdrom/extra/ focal main’ > /etc/apt/sources.list apt-get update apt-get install $packages とりあえず動きます。難点として、user-data での指定が全然できないことが挙げられます。 late-commands でなんでもできるので、それをしているだけになります。 正解2 filesystem.squashfs の中に apt archive を配置し、 user-data ファイルの apt 節で指定 filesystem.squashfs の中に apt archive を作成し、それを参照します。 この場合 path が読めるのでそのまま user-data で apt.primary.uri: file:///path-to-archive/ の指定ができます。追加で packages 節でインストールするパッケージを選べると思います。 インストール先ディスクに数 GB がりがり書き込むことになるため避けました。しかし user-data で指定ができることを考えるとアリかも知れません。 不正解1 イメージに apt archive を配置し、user-data ファイルの apt 節で設定 イメージの中の適当なディレクトリに apt archive を作成し、user-data で apt.primary.uri: file:///cdrom/extra/ などと指定します。late-commands で /target/cdrom/ 以下に配置。 これをした場合、インターネットがある環境でのインストールに失敗します。インターネットが存在する場合、 apt-get update が late-commands 以前に走り、そのタイミングで上の file://cdrom/extra/ が読めずにエラーを吐きます。 インターネットがない環境でのインストールは成功します。 微かに正解 イメージに存在する apt archive に追加コンポーネントを配置 イメージの中に存在する apt archive に追加コンポーネントを作成します。上の 18.04 までの方法です。この場合以下の二つに分けられます 不正解 user-data ファイルの apt 節で指定 user-data で apt.primary.uri: file:///cdrom/ などと指定。 この場合、不正解1と同様にインターネットがある環境でのインストールに失敗すると思います。 さらに、 user-data で apt を指定する場合、任意に追加したコンポーネントを読むように指定できません。 autoinstall の user-data での apt の記述でできることは、disable_components を指定してコンポーネントを除外することだけです。任意のコンポーネントを追加できません。 正解 late-commands で指定 late-commands で /target/cdrom/ にイメージを mount して、 /etc/apt/sources.list を書き換え。 正解1とほぼ同様で、イメージに初めから配置されている archive を利用できるようになります。しかし配置されている archive がそんなに多くないのでこの道を通ることはやめました。 よくある質問 もう Ubuntu 22.04 が出ますよ。 Ubuntu 20.04 の情報は古くないですか? 古いです。 方針として Ubuntu LTS リリースをリリースから1年経ってから使うことにしています。以前リリース直後のものを使ったところネットワークドライバ周りのバグでトラブルが起きたことがあるので。 この作業は 2021 年に行う予定でしたが、 2021 年の ICPC アジア予選横浜大会はオンラインで行うことになったためインストールイメージの作業は中断されました。 つまり 22.04 への移行は来年にやります。 手作業でやるの大変じゃないですか 大変です。今回も d-i から autoinstall に書き換えるのに数ヶ月分の週末を使いました。必要なことはそんなに多くないので、何か他の方法をご存知の方がいたら教えていただけると助かります。 とはいえ、毎回トラブルを起こす箇所が異なるので、ここだけが完璧に直ったところで他で苦労しそうです。今までは例えば以下のようなところで詰まっていました。 upstart が systemd になる デフォルトの WM/DM が変わる ネットワーク管理方法が変わる 全然違う方法で似たようなことをしています ぜひやり方を知りたいです。 実際のコード user-data # (apt line なし) late-commands: - mkdir /target/cdrom - mount --bind /cdrom /target/cdrom - curtin in-target –target=/target – bash /cdrom/late-commands.sh - umount /target/cdrom late-commands.sh #/bin/bash set -eux echo 'deb file:///cdrom/extra/ focal main' > /etc/apt/sources.list apt-get update apt-get -y install $(cat /cdrom/packages | sed '/^[#]/d;/^ *$/d') # (以降設定が続く)

2022-05-04 · Yu Sugawara

幼児に歴史の本を買う

子供(5)が歴史の本が読みたいという。本屋で見つけてきた 角川恐竜キングダムシリーズ を親の補助付きで読めるくらいなので、同じくらいの漫画が欲しいとのこと。 きっかけは たくさんのふしぎ 世界の納豆をめぐる冒険 で、その中に出てきた「千利休」やら「加藤清正」やらを説明するために私が戦国時代の話をしたところ興味を持ったらしい。以前に かんころもちと教会の島 で鎖国と隠れキリシタンの話をしたのも影響しているかもしれない。ちょうど納豆の本にも、韓国の隠れキリスト教徒の話が出ていた。 とりあえず「歴史漫画 幼児」あたりで検索してそれっぽい記事を探した。 日本の歴史漫画を比較してセット購入!幼児の娘が歴史漫画好きに育った経緯は、こちら! 【低学年におすすめ】歴史に興味を持ってもらえる日本の歴史マンガ7冊 読みやすい順(小1~) 字の密度や漢字の難易度を見るに、初めのサイトでおすすめされているタイムワープシリーズ の戦国時代から始めてみることにした。興味があるなら徐々に揃えればよい。 並行で小学校の社会科資料集とかがあると話がしやすいんだけど、Amazon とかに見当たらない。一般販売してなさそう。 例えば 光文書院の教材のページには、「書店販売や個人の方への販売はいたしておりませんのでご了承ください。」とある。Amazonで眺めて旺文社の中学受験参考書 を買ってみた。「絵がたくさんあって読みやすいが、受験には不十分」とコメントがあるので幼児と読むなら良さそう。 ちょっとトピックと離れるが、子供に漫画を読み聞かせるのは他の種類の本を読み聞かせるのよりかなりやりたくない。漫画をわざわざ手伝って読ませたりしたくないという認識を私がしているのだろう。周囲の「ざわざわ」みたいなのを「これ何書いてあるの!読んで!」とせがまれて読むのも虚無感があって疲れる。 追記 旺文社の参考書は全然ダメだった。受験どころかただの歴史の解説にも不十分すぎた。ホトトギスの三武将の名前が並んで、「彼らはどのように天下統一をしましたか。共通点と相違点を並べましょう」みたいなのしかない。どうしようもない。 改めて普通の小学校6年生の教科書を買ったらもう少しまともに説明があった。子供も気に入ったようで戦国時代から戦中までの歴史を音読させられた。 なら、高校生の歴史教科書なんかもありだと思う。小学校だとどうしても分量が少なく、詳しいことがわからない。戦国時代の章のひとつ前を見ると東山文化で、その前がもう元寇になっている。応仁の乱も南北朝も建武の新政もない。びっくりするくらい少ない。暗記目的や限られた時間で説明するなら重要箇所に絞ってもよいが、子供にわかるように説明するなら詳しくて損をすることはない。 漫画は子供は気に入っていていたが、一人では読めないのか読みたくないのか、基本的に親が読むことになる。どうせ読むなら情報量の密度として漫画よりも教科書の方がいい気がする。漫画のところにはほとんど情報がないので。子供が一人で読めるなら漫画でもいいが。

2022-02-04 · Yu Sugawara

子供に筆算を教えた話

もう一年近く前の話だが、足し算を覚えてしばらくしてから、子供が私を電卓の代わりにして遊び出した。 「1+1は」「2」 「2+2は」「4」 「4+4は」「8」 「8+8は」「16」 「16+16」「32」 「32+32」「64」 「64+64」「128」…. ここから進歩し、最近は自力で32+32=64くらいまではできてしまうようになった。ここで詰まるので、ちょっと手伝うスタイルにしてみた。 「128+128は?」 「まず100+100をやってみよう」「200」 「次に20+20は?」「40」 「最後に8+8は?」「16」 「じゃあ全部足してみよう。200 + 40 + 16なんだけど、16もバラしてまず40+10を計算しよう。」「50」 「今度こそ全部足してみよう。200+50+6になるから、答えは」「256」 「できたねー」「じゃあ次。256+256やりたい」 この調子で数日過ごしたんものの、「16384+16384=32768」あたりでちょっと無理がある気がしてきた。私はこのあたりの2のべき乗の数字を全部覚えているからできるが、子供はどう考えても今何を足しているか覚えていないだろう。 と言うわけで筆算を導入してみた。 すごい食いついてしまい、2の36乗までやらされる羽目になった。 やってみて気づいたこと まず数字をきれいに並べて書くのがまだちょっと辛い。練習が必要。はじめの “64” が子供が書いた数字。結局あとは私が書いた。 計算は全部子供がやった。結果が10以上になる足し算はわりとできている。7+7と9+9が少し怪しかったけど、今回何度も練習したからすぐにできるだろう。 数を読ませるのも結構大変だが、かなりいい練習。数字の下に「まん」「せん」「ひゃく」と書いたりした。 とりあえず子供が数字を書きやすいように、小学校の算数ノートを買ってみることにした。

2022-01-10 · Yu Sugawara

子供が本を読むまでにかかる時間

子供が本を読めるようになるのは結構時間がかかる。4–6歳くらいにはなるのではないか。 うちは子供用本棚がかなりあるが、まだ子供が自分で本を読める感じではない。 キングジムを配置してみた。取れないときもあるし、ファイルごと取るときもあるし効果は謎。そしてつかまり立ちをはじめてしまったので上の段を取るようになり無意味に。 pic.twitter.com/PMAotzlofq — Yu SUGAWARA (@gusmachine) May 25, 2020 子供が1歳くらいの時は、子供は3歳くらいになると文字を読めるようになって絵本を自分で読めるようになるのかと思っていた。そのころ絵本を読むのは結構大変だったので、早く自分で読めると良いと思っていた。 帰ってきた子供に頼まれるままに絵本を15冊くらい読んだところ現実感を失った🙃 — Yu SUGAWARA (@gusmachine) September 2, 2017 子供に絵本をせがまれるのを断れずに読んでたら、お休み4日目にして危険な疲れ方をしている。子供といると自動的に体がだるくなったり吐き気がしたりするやつ。喜々として対応しようとしている私に体が抵抗してるやつかな。 — Yu SUGAWARA (@gusmachine) December 26, 2017 そして実際、以下のようなサンプルをみると3歳くらいで本が読めそうな気がしてくる。もちろん子供に依るだろうが。以下、人のツイートを引用している。 ――なあ、今更突然気づいたんだけど。娘が不満に思ってたのは「一人で本を読みたかったから」なの? え、読めるの? 2歳1ヶ月未満で? 嫁「あ、絵本くらいならもう読んでますよ。寝る前、むしろ私に読み聞かせてる方です」 ……いつから? 嫁「年末あたりからですね」 成長早すぎるよ……(白目 — 榎宮祐 (@yuukamiya68) January 8, 2018 とか 妻「ひらがな教えるために50音表とかなにかやったりしました?」 父「引越しの段ボール見て「りんご」とか「みかん」とか読んでた」 私「は?」 — Yu SUGAWARA (@gusmachine) November 3, 2017 しかし、うちの子供はちょうど4歳で、ようやく短い文なら勝手に読めている気がする。また、先日、自分で七夕飾りを工作して、「ながいじがよめますように」って妻に書かせていた。まだ新しい絵本を読むのは厳しそう。 ただ、自分で文が読めるようになったとして、絵本を自分で読むかどうかはまた別の問題だろう。上であげた2歳未満で絵本が読めた榎宮さんのお子さんも、4歳でお父さんに絵本を読んでもらいたいらしいし。自分で読むのは自分で読みたいときか、他に読んでもらえる人がいないときではないか。 娘「ポケモンしたい!ヾ(๑╹◡╹)ノ"」 僕「最低限ひらがな読めないと辛いぞコレ」 娘「…………よめるよ(๑╹ω╹๑ )」 僕「嘘つけいつも読めない言ってるじゃん」 娘「ぶりむおん。まんたんのくすり( ๑╹⌓╹ )」 僕「読めてるじゃねーかテメ寝る前絵本読んでもらう為に読めないフリしてたな⁉︎」 — 榎宮祐 (@yuukamiya68) December 31, 2019 蛇足を付け加えると、「本を読める」にもかなり段階がある。子供が大人しく本を読んでいても、知っている本かもしれないし、絵だけみているかもしれないし、そもそも字面が追えていても理解できているかはまた別である。 更に蛇足だが、そもそも我々も文章を読めているだろうか?

2020-08-29 · Yu Sugawara