My daughter began playing Scratch on Debian

先日、こんな tweet をしました。

昨夜、おまめ一号が私のMacBook Pro を時々覗き込みながら何か描いているなと思ってたら「パパと同じパソコン作ってるの」と。 誕生くらいでデビューだ!と妄想したが早すぎて保留にしていたDebian デビュー、そろそろ頃合いかも。古いMacBookにSidインストールするか。

ということで、おまめ一号に使っていない古いMacBookを与えてみました。

../../../_images/omame-20170326_01.jpg

testing 用のCDイメージ を CD-RWに書き込み、グラフィカルモードでおまめ一号と一緒にインストールをしました。といってもおまめ一号にやらせたのは、

  • Enterキーを押す

  • 自分のユーザー名の設定

  • パスワードの設定

くらいですが。

インストールに関する余談

今回、おまめ一号にあげた MacBookは、Jessieがまだ次期stable だったときにSid化していたので、クリーンインストールする前にアップグレードを試してみました。

APT Lineを unstable から jessieに変更し、stableとして一度 update, dist-upgradeし、testing, unstableとステップ踏んでアップグレードしてみたのですが、途中余計なパッケージをお掃除しながらやっていたのもあったせいか、Xは起動しないは、systemd-fsckがコケるので起動時にメンテナンスモードに入ってしまう、という問題がありました。

なので、結局クリーンインストールで逃げました。Palm Pre用にPalm SDKをインストールしていて、このパッケージの依存関係が壊れてアンインストールできなくなったり、私が使っていたデータが残っていたりするので、子供に遊ばせるにはどのみちクリーンインストールの方が都合がいいので。

すでにメンテナンスされていない rEFIt から LILO 経由で Debianを bootしていたので、 rEFInd にしたほうが良いかなぁと思ったものの、そのままインストールして、特に問題なかったのでそのまま rEFItを使っています。

インストールに関する備忘録

次回やるときにまた忘れそうな箇所のメモ

  • Broadcomの無線LANのファームウェアは Debianインストーラーには含まれていないのでとりあえず無視

  • Disk Partitioning で、boot (/dev/sda3) は、EFI boot パーティショニングになっていたので、 ext3ファイルシステムに、マウントポイント

  • GRUBのインストールは /dev/sda3に指定、EFIリカバリディスクはチェック入れておいたけど、まぁとりあえず今回は関係ないかな

  • nVidia絡みは最新のDebianインストーラーだと、とくに設定不要でXを起動できる(楽になったもんだ)

Scratchインストールして遊ばせてみた

デスクトップ環境は私と同じ Awesomeにしようかな、と思ったけどやめておいてMATEにしました。ログイン後が若干もっさりしている感じはあるもののまぁ子供に使わせるには良さげ。 DebianパッケージでScratchをインストールをインストールした後、遊ばせる前に以下を教えました。

  • 電源アダプターの接続、RJ-45ポートにイーサネットケーブルを接続

  • 電源の入れ方

  • ログイン方法(インストール時に自分でユーザー名、パスワードを設定させたのはこのため)

  • Scratchの起動方法

  • Scratchでのプロジェクトの保存方法

  • Scratchの終了方法

  • 画面ロック方法(おまめ二号が勝手にいじるのを防ぐため)

  • 画面ロックの解除方法

  • シャットダウン方法

  • 片付け方

  • やってはいけないこと(物理的に壊すこと)

セキュリティに関することは追々教える感じですかね。

私自身がScratchを使ったことがないので、最初は一緒にちょっと操作方法を見て、あとは勝手に遊ばせてみたのですが、どこから見つけるのかちょっとテンプレートの画像を開いて勝手に遊んでいて、子供はすごいなぁと思いました(小並感)

../../../_images/omame-20170326_02.jpg

Aspiration of the 2017

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

今回の年末年始の休みは割と予定通り以上に家事等をこなせました。良かった良かった。 しかし悲報。明日から仕事です。マンションのシャトルバスも明日はまだ休みなのに。シクシク。

今年の抱負

昨年末の振り返りでも書きましたが、大病こそしなかったものの体調崩したり、仕事の比率が高くなって家庭に悪影響を及ぼしてしまったことなどがありました。今春、おまめ二号が幼稚園入園し、一号二号とも幼稚園でこれからいよいよ元気真っ盛りです。一方自分や妻の体力的な回復はますます遅くなってきています。20代の頃と違って、一時的に無理をすると、そのいっときは良いのですが、その後の回復に時間がかかります。長期的に見ると非常に無駄です。家庭も仕事もプライベートも一定のペースで継続することがますます重要だと感じています。恒常的に成果を出しつづけるのは、一時の頑張りで成果を出すよりも難しいものですし。

ということで、公私とも恒常的に成果を出していくために、「 無理しない。体調を崩さない。適度に体力増進に努める 」を抱負にします。

(KP)T

目標としては昨年末に振り返りをしたKP(T)を踏まえてのTryとして挙げてみます。

  • 8時間睡眠および朝型生活の維持

  • 残業しない

    • 気づくとつい30分〜1時間くらい残業してしまうことがあるので、これは本当に気をつけないと

  • 英語の学習再開、継続

    • 先日のMini Debian Conference Japan 2016の運営で、このままではあかん、と思いました

    • 前職ではまだ同じチームに英語で話をする外国人の同僚がいたのですが、今は全く使わないので本当にまずい

  • プライベートでのコーディングの時間確保のやり方を変える

    • フリーソフトウェアのコーディングに費やす時間は、以前は30分ないし1時間単位で確保していました。が、これを10分単位で確保し、その単位で手を動かせるように変えてみることにします

    • 今までMacBook Pro 15’を使っていましたが、これも携帯性を重視したものに変更しようかなぁ。職場のPCと2台持ち歩くのはしんどいし。

    • メンテナンスしているDebianパッケージ以外で、自分がよく使っているソフトウェアでも、お手伝いする時間を作ってみようかなと、今回の年末年始のお休みでちょっと思ったり

  • Debian JP Projectのサーバー移行の残作業

    • やらんとなぁ…

Review the 2016

昨日で(在宅勤務でしたが)仕事納めでした。短いですが今日から休みです。年末年始ってやること多くて休んだ気にならないのが悩みの種です。

さて、恒例ですが今年の振り返りをしてみました。

2016年の抱負はこちら。 Aspiration of the 2016

今年の抱負は実現できましたか?

今年の抱負は「家族皆健康第一、短い時間できっちり成果出す」でした。

私自身の健康

私は昨年よりあまり病院行っていないような気がしていたのですが、家計簿見たら、季節の変わり目に体調崩したり、持病が悪化したりして、通院したりで、 掛かった 医療費は昨年とあまり変わりません でした。

生活習慣としては次の二点を変えました。 眼鏡を常用するようになった こと、食事だけでなく 睡眠時の姿勢を気をつけるようになった こと。

もともと視力は両目で0.7はあったので、運転時以外の普段は眼鏡を掛けていなかったのですが、乱視があるなら常用した方が良いと指導されました。このおかげで、 夕方になると酷くなっていた緊張性頭痛や、偏頭痛がほとんどなりました 。もっと早くから眼鏡掛けていれば良かったですね。

後者は3,4年前からある持病が時々酷くなり、その都度通院して服薬する、という状況なのですが、 睡眠時の姿勢を気をつけることで、だいぶ体調が良くなりました

家族の健康

家族では、というと は年末に感染症胃腸炎で寝込み、 長女のおまめ一号 は今年も幼稚園の運動会のときに風邪を引いて参加できませんでしたが、それ以外は 概ね良好 でした。

次女のおまめ二号 は、昨年見つかった病気の治療は終わり、それによる症状は中程度から軽度に改善しました。一方、そのうち出るかもしれないと言われていた別の症状が年明けすぐくらいに見つかりました。これは毎日服薬することで症状は治まっています。もう一つ、昨年くらいからもしかして?と思っていた別の症状が年末に確定したものの、恒常性ではないので現時点では様子見で良さそうです。子供(特におまめ二号)はいろいろあり大変ですね。

そして、もう一匹の家族である、 こまめ 。2月に 胆管炎 で2ヶ月ほど自宅で点滴治療を行い、そして11月末にまた 嘔吐症から胆管炎と膵炎を発症 し、1ヶ月弱ほど点滴治療を行っていました。主治医によると、シャルトリューという猫種自体が、この病気が多いそうです。

短い時間で成果を出す

「短い時間」というのは基準が曖昧で、評価しづらいなぁと振り返ってみて反省。「決めた予定以内で」と読み替えてみると、仕事では概ね予定どおりに成果出せていたかなぁと思います。

昨年11月に転職してから職場にも慣れたこと、同じチームの同僚のコードを見たりコードレビューを受けたりでRubyやRailsにもだいぶ慣れたことが大きいですね。

一方、特に6〜10月で仕事で多忙だったのでプライベートで使える時間が減ってしまって、特に家庭内で問題が増えてしまって悩ましい状態でした。今はちょっと改善傾向です。

KP(T)

Keep

  • 7-16時勤務の朝型生活は維持

  • 睡眠時間を増やして体調は改善傾向

  • 仕事面は割と順調

    • しかしバランスは難しい

  • 「妻と一緒に娘のことで悩んだり決断したことを、なんらかの形にする」は達成

    • 無理のない形で継続できています

  • Debian JP Projectのメーリングリストの移行完了

    • お手伝い頂いた皆様ありがとうございました

  • Mini Debian Conference 2016 開催

    • 私自身は運営としてあまり活動できませんでしたが、開催できてよかったですね

  • 今年もふるさと納税した

    • 控除金額上限の計算は割と面倒ですねぇ

Problem

  • 睡眠時間を増やした代わりに自分の時間が減って、毎朝コーディングができなくなってしまった

  • 家計簿は相変わらず時間かかる(処理を溜めると特に)

  • 仕事の比率増えて、全体のバランス悪くなっている

    • 自分に余裕がなくなると悪化する、というのは分かっていたのに一定に保てませんでした

  • Tryで立てたことは、娘のこと以外はほとんどできなかった

Try

これは年明けの「新年の抱負」で書きます。

まとめ

今年も良いことも悪いこともいろいろありましたが、良い年を迎えられそうです。 年賀状の印刷と大掃除がまだ残っている ので、やりきって新年を迎えるぞ!

ということで、良いお年を。

Updates for TeX Live 2016

年々準備が遅くなっている年賀状ですが、ようやく来年の年賀状を書くか、と重い腰を上げ、 出す枚数を確定し年賀状を購入してきました。

ページサイズがおかしい問題に遭遇

毎年、年賀状印刷で最初にやることは、 宛名印刷用のPDFの生成ツール の動作確認です。更新したCSVから、TeXファイル経由でPDFを生成しているのですが、指定したページサイズが効かずにA4サイズになってしまう、という問題に遭遇しました。

年賀状なので、下記のように100mm × 148mmにしているのですが、これが正常に機能しません。

\documentclass[12pt]{jarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{verbatim}
\usepackage{plext}
\pagestyle{empty}
\setlength{\textwidth}{100truemm}
\setlength{\hoffset}{0in}
\setlength{\voffset}{0truemm}
\setlength{\headheight}{0truemm}
\setlength{\headsep}{0truemm}
\setlength{\oddsidemargin}{0truemm}
\setlength{\textheight}{148truemm}
\setlength{\topmargin}{0truemm}
\advance\oddsidemargin -1in
\advance\topmargin -1in
\setlength{\footskip}{0truemm}
\begin{document}
\setlength{\unitlength}{1truemm}

{{#address}}

\begin{picture}(100,148)(0,0)

dvipdfmx.defの変更が原因だった模様

TeX Live 2016にしたらページサイズがおかしくなります 」から、 こちらのスレッド を確認し、下記のように [dvipdfmx] オプションを [nosetpagesize] オプションに変更することで解消できました。

diff --git a/template/address.mustache b/template/address.mustache
index 513ee90..948eb3c 100644
--- a/template/address.mustache
+++ b/template/address.mustache
@@ -1,5 +1,5 @@
 <U+FEFF>\documentclass[12pt]{jarticle}
-\usepackage[dvipdfmx]{graphicx}
+\usepackage[nosetpagesize]{graphicx}
 \usepackage{verbatim}
 \usepackage{plext}
 \pagestyle{empty}

ということで

年賀状作成するぞ。

自宅サーバから始まったDebianとのお付き合い

この記事は「 自宅サーバの思い出 Advent Calendar 2016 」、 8日目 のエントリです。

いろいろ記憶が曖昧なところがありますが、思い出を振り返ってみました。


自宅サーバ事始め

自宅サーバを始めたのは、社会人になった頃、仕事と関係なくJavaとかXMLとかを独学で勉強しながら、なんか作って公開したいな、と思ったのがきっかけでした。当時、Windows 2000をデスクトップで使っており、ライセンス的に無理だったので、ベアボーンで RedHat 9か VineLinuxあたりをインストールしたような記憶。GNU/Linuxを使い始めたのもこれが最初。いくつかディストリビューションを試して、インストーラーと、パッケージ管理の操作性が簡単だったことから、VineLinuxを使うようになった記憶。もう15年くらい前になると記憶が定かではないですね。

サーバ公開するのにセキュアなサーバにするのはどうしたら良いんだろう?と思ったことから、趣味も仕事もセキュリティに興味を持ち、そこからサーバやネットワーク絡みの構築&運用が中心になっていったのは余談。 1

ベアボーンにする、のはやめた

当初は、ベアボーンで使うときだけ起動していました。で、じきに常時稼働を始めようとして、すぐにやめました。理由は、 うるさいから 。当時1Kロフト付きのアパートに住んでおり、ロフトで寝ていたのですが、狭いのでファンがうるさいので眠れないわけです。さらに、消費電力考えると電気代もかさみます。ということですぐにやめました。

OpenBlockSとの出会い

はじめて購入したマイクロサーバーは、 ぷらっとホームのOpenBlockS 266 (64MBモデル)でした。オンラインショップだったのか、今は亡き、秋葉原にあった店舗だった 2 のか、どちらで先に購入したのかは覚えていません。どちらで?というのは、その後OpenBlockS 266は順調に5台まで増えるからです。

OpenBlockSを選んだ理由は、消費電力が小さいこと、ファンレスだったこと、Linuxだったことです。その後OpenBlockS以外のマイクロサーバーとしては、

自分で購入したのが

譲っていただいたのが

という感じで順調に増えました。 今でも、Armadillo-J、OpenBlockS 600は現役です。(他は休眠中)

当初はセルフビルドだったんだ

OpenBlockS 266を使うにあたり、SSD/Linuxが割と使いやすかったのでそのまま、クロスコンパイルを環境を作ろうとしました。

もともとWindows 2000を入れていたPCをデュアルブートにして、何らかのGNU/Linuxディストリビューションをインストールしていました。多分、当時は巡りめぐって結局Vine Linuxを使っていたように記憶しています。が、ライブラリのバージョン絡みでうまくできなかったので、OpenBlockS自体でセルフビルド行っていました。

ApacheとかPostfix、SpamAssassin、Hobbitはまあそんなに時間がかからなかったのですが、PostgreSQLが確か6〜8時間、NET-SNMPが12時間オーバーだったような。ビルドしている間は放置していたのですが、まぁ、そんなのにいつまでも耐えられるわけはありません。

そしてDebianとの出会い

ちょうどそんなときにぷらっとホームからDebianのHDDイメージが公開されました。多分2005年ごろ。

VineLinuxで(APT-RPMの) 「apt-get 便利だわー。お、DebianでもAPT使えるのかー、これは使うしかないわー」と思い、OpenBlockS 266でDebianを使い始めたのがDebianとの出会い。APT-RPMがDebianのAPTから派生したものだと知るのはこの後の話です。

でちょうど同じくらいのタイミングで、OSC Tokyoで東京エリアDebian勉強会を知り、参加するようになり、OpenBlockSだけでなく、PCもDebianに変更し、という感じで基本Debianだけを使うようになりました。

自宅サーバの最初の転機

その後、アパートから今のマンションに引っ越し、前述の通り順調にマイクロサーバーも増えていくのですが、最初に訪れた転機は妻と結婚してから猫(こまめ、こまちゃん)を飼いだしたこと。飼いだした当初はまだ生後3ヶ月程度で、色々噛むので電源コードなどを噛んで感電しないように、という対策を打つようになりました。 3

こまちゃん対策ではさらに、3.11のとき、妻と二人して帰宅できなかったことから、OpenBlockS 600を使って、こまちゃん監視カメラを作りました。

自由に置けなくなる

次の転機としては、長女(おまめ一号)が産まれ、ママ友が自宅を訪れるようになってからです。 前述のこまちゃん監視カメラは、こまちゃんの滞在時間が一番長いリビングに設置していたのですが、これが「監視されているようで嫌だ」と不評で、撤去する羽目に。 4

さらに次女(おまめ二号)が産まれ、僅かなスペースと僅かな電力消費の節約で台数削減ということで、停止して片付けて台数減らしました。

グローバルIPアドレスが使えなくなった

今のマンションに入居して結構時間が経ち、マンション全体で加入している回線の帯域が狭いこともあり、ISPの切り替えに伴い、NAT下でのプライベートIPアドレスになりました。数年前から公開サーバ自体は主にVPSにしていることもあり、特に困らないのですが、なんか書いていたらちょっとさみしくなってきました。

そして今

現状動かしているのは、Armadillo-JでDHCPサーバとOpenBlockS 600でルーターを動かしています。マンションの回線入れ替え前までは、PoEで動かせるOpenMicroServerをルーター兼ファイアウォールとして動かしていたのですが、スループットの問題でOpenBlockS 600に切り替えました。

ちなみに目的が目的なので、これらはDebianではありません。現在、Debianは(公私問わず)開発環境としてのワークステーションと、公開用のサーバとしてVPSにつかっています。

OpenBlockS 600でもNAPTすると速度がかなり遅くなるので、YAMAHAルーターあたりが欲しいなぁ、と思う今日この頃です。

Footnote

1

前職でプライベートクラウドの開発を行って、現職では認証や管理機能の開発をやっています。

2

2台目以降は店舗で購入していた記憶です。理由は、ジャンクパーツの Xeonのヒートシンクをおまけでもらえたので。これをOpenBlockS 266に載せて、扇風機を当てるだけで10℃近く冷却できるのでした。

3

ちなみに噛んで感電というと、大学の卒業研究で在籍していた研究室で、実験用ラットをトレッドミルで走らせていたのですが、そのうちの一匹が電極を噛んで感電死したことを思い出します。

4

動体検知での監視が目的なので、そりゃそうなんですけどね。