本を読む

読書やコンピュータなどに関するメモ

第117回カーネル読書会でMSのOSS話を聞いた

 第117回カーネル読書会に行ってきました。お題は日本マイクロソフトの井上章さんによる「Beyond Openness of the "Death Star"」。レッドハットを会場にしたカーネル読書会で、MSの人がMSについて、Macbookでプレゼンするという、不思議な組み合わせでした。

 内容は、Build 2015で出たあたりを中心に、MSのクロスプラットフォームやOSSへのシフトについての話でした。なぜか“あの”荒井さんも参加者として来ていて、本編後にCoreCLRあたりの話をいろいろ聞かせていただきました。

 以下、メモ。

  • Build 2015
    • .NET CoreがOSSに。LinuxやMacをサポート
    • 新コンパイラRoslynをOSSで
    • GitHubにリポジトリ
      • 日本エンジニアからのプルリクも
  • Q: contributer agreementは
    • A: agreeすれば受け入れる
  • Q: Issueは受け付けるがコードは自分たちだけで書く、という会社もある。OracleとかGoogleとか。コードがそのまま採用されることはある?
    • A: ある。もちろん検証のうえで
  • Visual StudioにOSSツールをとりいれる
    • Google Chromeもw
      • Ripple Emulatorのため
    • Yeoman
  • いままでのMicrosoftは自社製品で閉じていた
    • これからは自社以外のものもとりこむ
  • Docker
    • パートナーシップ
    • Azure
    • 次期Windows ServerでDocker Engineをサポート
    • Visual StudioからDockerデプロイ
  • Visual Studio Code
    • クラスプラットフォームなコードエディタ
    • 30言語をサポート
  • デモ
    • Mac上で
    • ASP.NETのプロジェクトを作る
      • yo aspnet
    • dnvmでランタイムを確認
    • VS Code:node等のデバッガも
  • Q: .NET Coreと.NET Framework 4のAPIの互換性
    • A: .NET Coreはサブセット
  • Q: dnvmでインストールされるCoreCLRやdnu restoreでインストールされるライブラリなどのLinuxバイナリは、Windows版と同時にNuGetギャラリーに登録されるか
    • A: はい
  • デモ続き
    • VS Codeからgitの操作
    • GitHubにpush
    • Ubuntuでpullしてdnu restore
    • Azure上のUbuntuにログイン
      • Docker Engineが動いている
      • asp.netアプリをDockerコンテナーで動かす
      • 複数同時に動いた

「日経Linux」2015年7月号

 この号の執筆に参加しました。あと1週間ちょっとで次の号が出るけど、ようやく通読したので、宣伝(なるの?)とメモ。

 特集3の「Ubuntu 15.04でイチから学ぶLinux」を執筆しました。Linux&Ubuntu入門と、Ubuntu 15.04の新機能紹介を兼ねた企画です。ただ、Ubuntu 15.04で最大の特徴はsystemd導入で入門者には意味がわかりづらく、わかりやすいGUIまわりの変更は少ないので、そのへんは割り切って説明しています。

 systemdでも、サービスの起動停止ぐらいであれば、コマンド名と引数の順番が違う程度です。そのへんの対応表を付けました。

 自分関連はそれぐらいにして、以下、通読メモ。

 特集1が、「サーバー超入門」。Nautilusのローカルネットワーク共有、リモートデスクトップ、MiniDLNA、WordPress、ownCloud、pptpd、nginxのRTMPモジュール、Samba、クォータ、MediaWiki、Geeklog、Mailman、dhcpd、NFS、Squid(フォワード/リバース)、MariaDB、OpenLDAP、OpenAM、Redmine、OpenNTPD、mdadm、apcupsd、ClamAV、SpamAssassin、Zabbix、Docker、Apache+mod_security、rsyslog、gitwebの使い方を、順に解説している。

 特集2が「初めてのラズパイ電子工作」。抵抗やLEDに始まり、スイッチ、7セグLED、マトリクスLED、ブザー、リレー、モーターなど、部品を1つずつ学んでつないで試していくという構成。最後にこれらを組み上げて、赤外線センサー付きの車を作る。

 ラズパイ関連はほかにもいくつか。巻頭レポートでは、Paspberr Pi 2でのUbuntu MATEとWindows 10 IoT Coreの動作をレポート。ラズパイロボット連載が、アールティのロボットキットについて、ドライバを入れてシェルスクリプトから操作する話。ドローン改造連載が、ラズパイでカメラの操作プログラムを入れて動かすあたり。「Raspberr Piで始めるモノ作り超入門」がシーズン2最終回で、3つのLEDをPythonによるGUIからコントロールする。

 特別企画では、Fedora 22について、Q&A形式で紹介している。ほかにもディストリビューションについては、巻頭レポートでDebian 8(jessie)を紹介。世界のディストロ連載が、各種サーバーが最初から動くSuperb Mini Server。

 Matz氏の「作りながら学ぶプログラミング言語」連載が、ローカル変数のデザインと、クロージャー、例外、例外のかわりのOptionalなど。Streemでは、シェルスクリプト的にエラーで実行停止せずステータスコードで表す方針とのこと。

 中井悦司氏の本格サーバー構築連載が、SSH公開鍵認証と、sudoers、SELinuxの基礎のあたり。Linux超入門連載が、ファイルの検索ネタで、Nautilusのエンブレム、DashのLens、find、grep、zgrep、Sylpheedのメール検索、Geeqieの画像検索。LPIC連載が、ファイル関連の基本コマンドについて。最近のLPIC試験は、systemdまわりも扱ってるのね。LinuxでPCリフォーム連載が、Core 2 Duo世代のマシンにFedora 22 WorkstationとFedora 22 KDE Respinを入れてデュアルブートするネタと、自分のRespinを作る方法。カーネル新機能連載が、ext4での暗号化サポートについて。

 その他、巻頭レポートで、IntelのCompute Stick、Sphos Anti-Virus for Linux。フリーソフト連載は、楽譜作成&演奏ソフトのMuseScore。美女Linux連載が、catとless。

 毎度楽しみ「#!シス管系女子 Season 3」が、シェルスクリプトで標準入力と標準出力を使ってほかのコマンドとパイプでつなげる方法。whileやread、mktempなども。

「Q.E.D. iff」1巻、「C.M.B.」29巻

 人気ミステリーコミックシリーズが、今回も2冊同時発売された。ただし、「Q.E.D.」は新雑誌での連載開始にあわせて、「Q.E.D. iff」に名前を変えて再スタートとなっている。

 ちなみに、「あなたを殺します」と題して、被害者や犯人として登場する権利のプレゼントの告知が、両方の巻末にあり。

 以下、ネタバレに気をつけているつもりだけど、未読の方は念のためご注意を。

Q.E.D.iff ―証明終了―(1) (講談社コミックス月刊マガジン)
加藤 元浩
講談社 (2015-06-17)
売り上げランキング: 623

 「Q.E.D. iff」は、再スタートにあわせ、それぞれ典型的なスタイルの2作を収録している。ちなみに、2人は3年生になり、塔馬君はお引っ越し。

 「iff」は、間取り図が出てくるタイプの正統派推理物。画家がアトリエで殺された密室殺人事件を解く。これみよがしに出てくるアレがああ使われたのか、というところが面白かった。

 ちなみに以前から、巻頭の人物紹介で塔馬君が「人間の勘定には疎い」とあるのは最近は違うんじゃなかろうか、と思っていた。そのへん、今回は原点に戻ってそういうエピソードが入っていた。

 「量子力学の年に」は、1920年代の新興宗教団体が一夜にして壊滅した事件について、当時の量子力学黎明期の混乱をからめて、「いったい何が起きたのか」を探る話。伏線がドラマ的に使われるタイプの話で、そこがそことつながったのか、というところが面白かった。

C.M.B.森羅博物館の事件目録(29) (講談社コミックス月刊マガジン)
加藤 元浩
講談社 (2015-06-17)
売り上げランキング: 641

 「C.M.B.」は、「プラクルアン」「被害者、加害者、目撃者」「椿屋敷」「自白」の4編を収録している。いずれもトリッキーな感じ。

 「プラクルアン」は、大富豪が遺したタイのお守りの謎を探る。最後に、それまで描かれていたエピソードの意味がわかってゾッとするタイプのストーリー。

 「被害者、加害者、目撃者」は、鞄のひったくり事件について、2人のどちらが被害者でどちらが加害者かという事件。そして、ひったくり事件の裏には……

 「椿屋敷」は、ドラ息子が祖父から受け継いだ屋敷の謎を探るドタバタコメディ。ラストのオチw

 「自白」は、強盗殺人事件の被害者の行動の謎から、真相を探る話。そして、容疑者が自白した理由は?

「できるPRO Red Hat Enterprise Linux 7」

できるPRO Red Hat Enterprise Linux 7 (できるPROシリーズ)
平 初 できるシリーズ編集部
インプレス
売り上げランキング: 29,272

 編集のお手伝いをした書籍が、6/25に発売になるので、宣伝です。早売りの店では、6/24から並ぶかと思います。

 図解をまじえた入門書シリーズ「できるPRO」で、Red Hat Enterprise Linux(RHEL)7の解説書の登場です。最終的に、RHEL 7.1で動作確認をしています。

 著者は、レッドハットのクラウドエバンジェリストのたいらはじめさん。執筆依頼では、「新人エンジニアや学生さんを対象に、1日コースのハンズオンセミナーをするような内容」とリクエストしました。そのとおり、順を追って体験できるようにわかりやすく書いていただきました。いやー、レッドハットのハンズオンを3,000円前後で誌上体験できる(しかも好きなだけ何度も)というのは、ありがたいですね。

 メインは「Linuxの入門」ですが、Linux経験者にとっても「RHELの入門」や「RHEL 7の入門」として役立つのではないかと思います。たとえば、Red Hatのサブスクリプションの考え方や使い方などは、RHEL以外のLinux入門書では出てこない内容です。また、RHEL 7では以前とはいろいろ管理体系が変わっています。systemdやfirewalldでのシステムの正しい操作方法も、ネットで断片的な情報を見ていても案外知らないことがあったりするものです。

 最後は、KVMやDockerまで扱っています。Dockerについては、Red Hat独自のDockerレジストリを有効にしてRHELコンテナを動かします。

 ただし、ハンズオンセミナーとして体験するという目的を優先したため、本書はいくつものサービスを実用的に構築して運用するだけの知識を詰め込むという目的は重視していません。著者も「まえがき」で書いているように、本書で体験した知識をベースとして、新しい知識を学習していっていただければと思います。

Rubyで連結リスト

 これを見て、Rubyに連結リスト(Linked List)が標準添付ライブラリであったりしないかなと思って調べたら、Rakeの中にRake::LinkedListクラスがあった。自分で作っても大した手間ではないけど、それはさておき、試してみる。

 まずrequireで読み込む。

require 'rake/linked_list'

 クラス名が長いので、ここでは別名をつけてみる。

Cons = Rake::LinkedList

 リストを作る。以下の3とおりの書き方ができる。3つ目の書き方がいちばんシンプルだけど、内部では一度Arrayが作られてしまう。

list = Cons.new(1, Cons.new(2, Cons.new(3)))        # Lisp的に
list = Cons::EMPTY.conj(3).conj(2).conj(1)          # メソッドチェーンで
list = Cons.make(1, 2, 3)

 さて、リストの操作。headとtailが、carとcdrに相当する。to_sやinspectが定義されているので、リストをそのまま表示できる。

p list              #-> LL(1, 2, 3)
p list.head         #-> 1
p list.tail         #-> LL(2, 3)

 Enumerableをmixinしているので、mapとかそういうメソッドも使える。ただし、結果はArrayになる。

p list.map {|x| x * 2 }     #-> [2, 4, 6]

「日経Linux」2015年6月号

 来週にはもう次の号が出る時期だけど、ようやく通読したのでメモ(こればっか)。なお、この号の執筆には参加していないので、普通に買って読んだ。

 特集1が、「Windows→Linux移行図鑑」。Part 1がUbuntuのインストールと、Windowsの各種データの移行。Part 2が、Ubuntuとそれ以外のデスクトップ用ディストロの紹介。Part 3が、Windowsの使い方に相当するLinuxの使い方。Part 4が、Windowsのアプリに対応するLinuxのアプリの紹介。Part 5が、UbuntuかからVirtualBoxやWine、リモートデスクトップを使ってWindowsアプリを使う方法。

 特集2が、「Raspberry Piをいじって遊ぼう」。Part 1が、Raspberry Pi 2の性能を活かしてOpenCVを使う話。Part 2が、無線マイコンTWE-Liteの超小型版「TWE-Lite 2525A」をサイコロに入れて、サイコロの目に合わせてRaspiのLEDが光る工作。Part 3が、気圧センサーを例にしたI2Cの使い方。

 特集3が、「見た目で選ぶLinux」。Part 1が、マテリアルデザインテーマ「Paper」、Mac OS X風のディストロ「elementary OS」、歴代Windowsのデザインを選べるディストロ「Zorin OS」、木目調テーマ「Wood n Tux」、萌え系ディストロ「萌えぶんちゅ」の紹介。Part 2が、MATEで使われているウィンドウマネージャー「Metacity」のテーマの作り方の解説。

 この号から特別連載が2本スタート。「Raspberry Piで始めるかんたんロボット制作」は、USP友の会会長で本職がロボット研究である上田隆一氏が、Raspberry Piの載ったマイクロマウスをシェルスクリプトで操作する話らしい。「ドローンを改造して飛ばそう」は、ドローン(マルチコプター)のDJI Phantom2 Vision+に自作カメラを搭載する話で、まずは素材の見当から。

 まつもとゆきひろ氏の「作りながら学ぶプログラミング言語」が、前回で上げた文字列の自動インターンを試したらデータが大きくなると消費メモリーが予想以上に大きくなってしまったという報告と、YaccによってソースをパースしてASTを作るところ、それに関連してオープンソース流開発について。

 中井悦司氏の「初めての“本格”サーバー構築」連載が、LVMによるスナップショットと、そのスナップショットをSambaで見せる設定、LUKSによる暗号化ボリューム、sshを使った遠隔バックアップ。

 Linux超入門連載が、「セキュリティを向上させる」というテーマで、アップデート、apt-listchange、非公式パッケージやスクリプトの注意、ClamTK、UFWを解説。「LinuxでPCリフォーム」連載が、2008年のIntel CPUのMacBookにUbuntuを入れる話で、事前にMac OS上でハードを調査したりドライバを追加したりするところまで。「Raspberry Piで始めるモノ作り超入門」連載が、LEDをON/OFFするためのGUIを何種類かPythonで作る話。LPIC連載が、ランレベルやsystemd、/boot、iノード、マウントのあたり。カーネル新機能連載が、iノードのタイムスタンプをディスクに書き出す回数を減らす「lazytime」。

 巻頭レポートがUbuntu 15.04とFedora 22のリリース直前情報に、仏Parrotのドローンの新機種 「Bebop Drone」、Linux MintのLMDE 2、ChromeでAndroidアプリを動かすARC Welder。フリーソフト連載が、インターネットラジオ局を作るSHOUTcast DNAS Server。美女Linux連載がpwdとls。世界のディストロ連載が、Porteusをベースにしたキヨスク端末用ディストロの「Porteus Kiosk」。

 「#!シス管系女子 Season 3」が、whileによるループ。このオチ、あるある(苦笑)

 | HOME | 

Categories

Recent Entries

Recent Comments

Recent Trackbacks

Appendix

emasaka

emasaka

フリーター。
連絡先はこのへん

Monthly