2014年1月28日火曜日

ひさしぶりに FreeBSD

をみてみる。10.0-RELEASE 出たこともあり。

FreeBSD 10.0-RELEASE Announcement

7.x くらいまではなんとなく触ってたものの、8.x, 9.x はほとんど触れてなかったな。
というわけでざっと過去の accouncement をみてみた。。 7.0 から。内容は適当に省く。リリース日順。

・7.0-RELEASE (2008/2/6)
libthr がデフォルトのスレッドライブラリに
IPC, networking, スケジューラのロックが細粒度化
ULE スケジューラがかなり改善、でもデフォルトではない。
ZFS を experimental support
gjournal, gvirstor
XFS を read-only で support
いくつかの network driver で TSO と LRO support
Experimental SCTP (Stream Control Transmission Protocol) support
OpenBSD からの lagg(4) の import
BPF が jit コンパイルするようになってパケットキャプチャ性能改善
jemalloc 搭載 ( phkmalloc 置き換え)
freebsd-update

・7.1-RELEASE (2009/1/5)
amd64 と i386 では ULE スケジューラがデフォルトに
OpenSolaris から DTrace を import
NFS Lock Manager client の改善
ブートローダの変更。USB デバイス、GPT ラベルなデバイスからの起動が可能に
cpuset システムコール,コマンドが追加

・7.2-RELEASE (2009/5/4)
Superpages を透過的に利用可能に ( Superpages についてはこの記事を見よう)
Jail で 複数の IPv4/IPv6 アドレスのサポート

・8.0-RELEASE (2009/11/25)
Xen Dom-U, VIrtual Box ゲスト&ホスト, 階層化 Jail
NFSv3 GSSAPI support, experimental NFSv4 client and server
802.11s D3.03 無線メッシュネットワークと仮想アクセスポイントのサポート
ZFS はもはや experimental じゃないよ
USB 周りの書き換え、USB ターゲットのサポートを含む
多くの箇所で SMP スケーラビリティの継続的な改善、 特に VFS 周り
ネットワークリンク層サブシステムの改訂
MIPS アーキテクチャの experimental サポート

・7.3-RELEASE (2010/3/23)
ZFS が バージョン 13 に
gptzfsboot というおにゅーなブートローダが GPT と ZFS をサポート
hwpmc の強化で Core2/i7 プロセッサと pmcannotate のサポート
ぬるぽ脆弱性の緩和〔?〕
新 mfiutil, mptutil ツール

・8.1-RELEASE (2010/7/23)
zfsloader の追加
zpool がバージョン 14 に
UFS と ZFS で NFSv4 の ACL サポート。cp(1), find(1), getfacl(1), mv(1), と setfacl(1)。

・7.4-RELEASE (2011/2/24)
Many misc. improvements and bugfixes
(7.x は終了)
 ・8.2-RELEASE (2011/2/24)
FreeBSD/amd64 で Xen HVM, FreeBSD/i386で Xen PV サポートの改善
ZFS on-disk format がバージョン 15に
aesni(4) ドライバ
Many misc. improvements and bugfixes

・9.0-RELEASE (2012/1/12)
新インストーラ bsdinstall(8) の追加。ISO イメージで利用。
FFS が softupdate journaling サポート。(略称 SUJ ってやつ)
ATA/SATA が AHCI をサポート
HAST フレームワーク
Capsicum Capability Mode サポート
ユーザレベル DTrace
TCP/IP スタックが mod_cc(9) をサポート (Modular congestion control)
NFS サブシステムの更新。新実装は NFSv4 をサポート。
High Performance SSH (HPN-SSH)
Flattened device tree 。組み込み向け。
powerpc アーキテクチャの PS3 サポート
LLVM と clang を import

・8.3-RELEASE (2012/4/20)
usb(4) が USB パケットフィルタをサポート
TCP/IP スタックが mod_cc(9) をサポート (Modular congestion control)
ZFS が SPA version 28 に

・9.1-RELEASE (2012/12/31)
Intel GPU ドライバ GEM/KMS サポート
netmap(4) fast userspace packet I/O framework
illumos プロジェクトからの ZFS の改善
CAM Target Layer, a disk and processor device emulation subsystem
Jail でいろいろ(devfs, nullfs, zfs マウントなど)
POSIX2008 拡張ロケールサポート。Darwin での拡張との互換。
oce(4) ドライバ
sfxge(4) ドライバ
Xen 準仮想化 Ethernet driver (netback) の改善
hpt27xx(4) ドライバ
GEOM マルチパスの改善
ataraid(8) 非推奨により Software RAID では GEOM raid がデフォルトで有効に
AVX FPU extension カーネルサポート
IPv6 hardware offload support の多くの改善

・8.4-RELEASE (2013/6/7)
Feature flags 5000 version of the ZFS filesystem. (なんだろこれ?)
出荷されている全ての LSI storage controller のサポート

・9.2-RELEASE (2013/9/30)
ZFS ファイルシステムで TRIM サポート。SSD 利用時。
virtio(4) を GENERIC カーネルに追加。amd64 & i386
ZFS ファイルシステムで lz4 圧縮サポート
DTrace フックをデフォルトで有効に。GENERIC カーネル。
DTrace バージョン 1.9.0
HEAD からの unmapped I/O support の import

・10.0-RELEASE (2014/1/20)
GCC はデフォルトでインストールされない。clang(1) がデフォルトのコンパイラに。
Unbound をベースシステムに import。ローカルキャッシュ DNS リゾルバ。
BIND をベースシステムから削除
make(1) を bmake(1) に置き換え。NetBSD から。
pkg(7) がデフォルトのパッケージ管理ユーティリティに
pkg_add(1), pkg_delete(1)と関連ツールは削除
仮想化周りの拡張。bhyve(8), virtio(4)、Hyper-V でゲスト利用時の準仮想化ドライバ。
SSD での TRIM サポートが ZFS に追加
LZ4 圧縮アルゴリズムが ZFS に追加


EC2 サポートは Collin Percival さんがしておられるのでそれをみれば OK
FreeBSD on EC2

こうしてざっとみてみるとやはり ZFS や DTrace を使いたくなってくるかな。開発も順調につづいているし、ZFS on Linux より歴史長いし。(OpenIndiana / Solaris / SmartOS あたりを使おう!というのは無視)
ZFS - FreeBSD  Wiki

ipfw/ipfilter/pf 周りはどのような状況になったんだろう。

Raspberry PI サポートよいかも。
http://www.freebsd.org/releases/10.0R/relnotes.html#kernel-arm

2014年1月26日日曜日

気になる技術

2014年、どの新しい技術を学ぶべき?

というものありつつ。
いまんとここのへんが気になるな、というのをほんのいくつか。まなぶべきかはしらん。

・G社なもの
Dart
Go
Angular JS 

Dart は ECMA が標準化開始したし、Go は Twitter でも前よりみるようになったかな。
Angular JS は、「よくみかけるなー、なにこれ」と調べてみたら by Google なプロダクトであった。この辺は疎すぎるな。

「Successor of JavaScript」なやつ?(なんと呼べばいいのかわからない)は Dart 以外に Haxe, JSX, TypeScript, CoffeeScript といろいろあって、正直、わけがわからない・・・。プログラマさんはどう選んでるんだろう。


 ・サーバ/OS まわり
CoreOS
Mirage OS


・Configuration / Orchestration
自分としては Chef/Puppet/Ansible/Salt 周りは必要に応じて追うかな、という程度かな。前二つについてはもはやだいぶこなれてきたはず。CFEngine の頃からそのようなのを使ってる人にとっては今更感ありありなんだろうなとも。既存の(ぐちゃぐちゃな)環境にうまく取り込んでいく手法については気になる。

Immutable ほげほげ、というのはひとつの流れとしてはあるんだろうと思うけど、それをできない環境もまた多くある(というかそっちがほとんどかな)と思うのでそれが「絶対」ではないのを承知の上でノウハウとしてなんとなくでもワカってはおきたいところ。
環境に応じて適切なものを選択できるのがだいじ。

2014年1月21日火曜日

表にでてこない人

Twitter, Facebook, 様々なブログなどでは捕捉できない多くの人の中に紛れ込んでいる凄いひと、と接触できる機会があるといいよね。

と思う。

2014年1月13日月曜日

Reality Check

(Reality Check は原題)


起業なぞすることはないのだけど、ガイ・カワサキの著書を読んでみようと思って買い、積ん読状態だったのでパラパラとめくる。

93章の「さらにわかった人生の教訓」のこれはウケた。
「あなたがだれかをクソッタレだと思うのなら、ほかのみんなもそう思っている」
「クソッタレを相手にしているほど人生は長くない」

後者は、ジョブズがスピーチで言ってた
「Your time is limited, so don't waste it living someone else's life.」
と同じ感じだよね。

ほげ言語を使っている身近なサービス

てきとうに思いついたものを軽く列挙.
(これだけを使ってるわけではないしもう使ってなかったりするとこもあるかもね.)

・Erlang
WhatsApp

・Perl
mobage

・PHP
GREE
facebook (HPHPか)
Yahoo!

・Python
Reddit
Dropbox
Pinterest
Instagram
disqus

・Ruby
COOKPAD

・Scala
Twitter

なんで書きたくなったかというと、以前 Erlang 好きなひとがいたのを思い出し、当時は RabbitMQ で必要だから入れてごにょごにょしてるくらいしか見れなかったので、さて大規模なサービスだと何があるのかなーと探してみたら WhatsApp がでてきたのだった。

このスライド
http://www.erlang-factory.com/upload/presentations/752/reed-efsf2013-whatsapp.pdf
をみると、scalability のための策の一つとしてメッセージサーバを lighttpd + PHP から YAWS (Erlang で書かれた web server) にリプレースしている。それ以外にストレージ周りやらハードウェアも新しくしてるようなので言語だけに目を向けてはいかんのだけどね。
Erlang の出自からして、WhatsApp のようなサービスに向いてるんかな。

2014年1月10日金曜日

音楽性の違い

という言い方はうまいなぁと思う。

自分の場合すぐ思いうかぶのが WANDS.
WANDS
脱退しても、「WANDS」 というのは(名前だけだとしても)少しだけだったけど存続したんだなー、と。

ヴォーカルがかわりまくりんぐなイメージなのはヴァン・ヘイレンかな。結局デイヴが元通りなんだけども。VHの場合は音楽性の違いではないんだろうな。最近の活動はしらない。
ヴァン・ヘイレン

サミーの歌うこれが好きだなー。懐かしい。



さて、振り返ってみると、これまでいた会社で創業時に主たる事業だったものをずっとそのまま主として続けているところは、ほぼ、ない。一社目と今度は違うけど。
あるところは会社があんなことやこんなことになったし、あるところは当時からは想像つかない、全く手をだしてなかったハードウェア事業なんかやっちゃってるし、あといろいろと。。

それでも、「会社」としては続いていくし(事業統合後分社化して新会社だよ、というケースはある)、レイオフでも無ければ従業員はそのままではある。事業転換の内容次第で「要らなくなる人」「これから要るようになる人」は必ず発生するけども。
ただ、その違うほうへ行くのを指ししめす方法によっては、中にいる人への影響は全く変わってくるよなと思う。
上り調子による経営資源の選択と集中か、下り調子によるそれか、でもね。

2014年1月3日金曜日

2014年は

新たに〜〜する!とかいうのはとくに無い。

これまでしてきたことのいくつかに、よりぐぐっとフォーカスする感じか。