new リュックサック(Cote&Ciel)
半年間迷い続けたリュックサックを、
遂に買いました°˖✧◝(⁰▿⁰)◜✧˖°
買ったのはこれ。
Côte&Ciel Isar Rucksack Medium for Evernote
MacBook Proを常に持ち歩きたかったんだけど、普段会社に持っていくようなトートっぽいバッグ👜だと、肩への負担が大きくどうにかしたかった。
他に迷ったメーカーとかは無く、
最初からCote&Ciel一択だった、というか
この商品を見て「リュックサックが欲しい!」と思ったんだけど、
通常モデルにするか、Evernoteがコラボしているモデルにするかで半年間迷ったってわけ。
もうちょっと出せばそれなりのブランドバッグが買えてしまうお値段ですもの、そりゃ迷うよね...。
以下が写真
Macbook Pro 13inch(Retina)が余裕で入ってます。
表側の収納と背中側のPC用収納は、中では繋がっていないので注意。
使って一週間経ったので感想
- 意外と大きい
- 169cmあるわたしでも結構大きいなと感じる。背の低めの方は、一度現物をみて確認すると良いかも(実店舗は無いみたいだけど、以前新宿伊勢丹で現物をみた。)
- リュック自体がそれなりに重い
- 材質がEco Yarn(エコヤーン)リサイクル素材を使って繊維にしたもの。手触りも硬さも良い感じだけど、重厚感がある。既に一度雨に降られたんだけど、耐水性は強そうなので定期的に防水スプレーでケアすると完璧っぽい(ง •̀_•́)ง
- カッコイイ
- うん。
- 収納力は高いけど、旅行とかに持っていくような場合は不向きかも...
- 暖かい時期の一泊旅行とかなら良いけど、背中側の収納と表側の収納がセパレートになっている分、大きい荷物を入れづらい
- やはりリュック。服装を選ぶ。アウトドア用リュックほどでは無いけど。
- それでもジャケット+タイトスカートにこのリュックみたいに合わせると、ギャップ感出てそこらへんを楽しめるなら良い。
- MacBook ProとMag SafeとiPad miniを入れても、背中に当たる面に違和感無し
- 背中のパッドが厚めなので、結構何を入れても背中への影響はなさそう。
- スマートな印象があったけど、背負ってみると結構ガッシリとした印象
- ここは好みの問題だけど、個人的には良かった
- カッコイイ
- うん。
- 用途的に中身が結構重くなるので、荷物が多い時に後ろに引っ張られる感じがある。登山用リュックみたいな、腰のあたりでカチャっと留めるベルトがあると良かった
- 結構モノを詰め込むと、後ろに引っ張られる分猫背になりやすいかも。後付で腰のベルト付けられないかな...
今後自転車通勤も検討しているので、これをキッカケにシティアウトドア派になりたいなぁ...(๑´╹‸╹`๑)
まだ外でこのリュックを背負ってる人見たこと無いんだけど、
噂によると勉強会とかでは結構カブるとか...
オススメ商品だけど、あんまりオススメしたくないジレンマ。
YAPC::Asia感想【2日目】 #yapcasia
そもそも行ってない
行けなかった。
YAPC::Asiaに行ってきた【初日】 - Still life
こんな感じで前日の夜、日付変わるくらいまでは
帰りに食べた武蔵家でくらったダメージがお腹に残っているなぁ程度で、
2日目のセッションを楽しみにしていたんだよ。
初めて武蔵家食べたんだけど、お腹が重いつらい
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 29
お...な...か...
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 29
いや、ホント胃がやばい
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 29
明日に支障をきたすレベルで腹痛に襲われ続けてる。少しおさまってきたけど...
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 29
既にこの辺りで4時間位ベッドでうなされてた。
胃薬は飲んだものの、結局ほとんど寝れず。
痛みはおさまりつつあったものの、朝一で病院へ。
いろいろあって消化器内科にきてる
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 30
既に2日目最初のセッションが始まってるくらいの時間ですね。
今頃日吉にいるはずだったのに、なぜわたしはこれから胃カメラを飲むのか
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 30
今回のベストトーク賞を受賞された、そもそも今回わたしが一番参加したいセッションであった
半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情(5.6対応) - YAPC::Asia Tokyo 2014
がはじまるころ、わたしは胃カメラを飲み、血だらけのmy stomachを見せ付けられていた。
12時間前には、まさかこんなことになるとは想像だにもしていなかった。
yapc初日行ったらその日の深夜に出血性胃炎になったので、2日目断念。
来年リベンジします (꒪.̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̨̨̨̨̨̨̨̨̨̨̨̨.̸̸̨̨꒪ )
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 30
感想
来年は、ラーメンは初日には食べない
YAPC::Asiaに行ってきた【初日】
電車内で知らないおっさんに話しかけられて気まずい中yapc向かってます
— ゆいたゃん(オハチョマ) (@yui_tang) 2014, 8月 29
参加したセッション
- 完成されたシステムなどない。完成された人間もいない。あるのは成長し続ける未完成なシステムと、それを支える未完成な人間だけだ - YAPC::Asia Tokyo 2014
- Perl::Lint - Yet Another Perl Source Code Linter - YAPC::Asia Tokyo 2014
- Scala In Perl Company : Hatena - YAPC::Asia Tokyo 2014
- One layer down below. - YAPC::Asia Tokyo 2014
- いろんな言語を適材適所で使おう - YAPC::Asia Tokyo 2014
- 開発合宿!!!! - YAPC::Asia Tokyo 2014
- Lightning Talks Day 1 - YAPC::Asia Tokyo 2014
- YAPC::Asia Tokyo 2014 懇親会 - YAPC::Asia Tokyo 2014
初日での感想
- 駅近、ありがたいです
- ネットワーク環境が快適でとてもよい
- 金曜日でこの席の埋まり具合、土曜の明日が心配である
- 直接yapcと関係ないけど、peatixはリマインドメールにQRを貼っつけてほしいです(ツラい)
- 他カンファレンスと比較しても女性陣少ない(ツラい)
- メイン会場を海外ゲストのセッションにあて、人気PerlMongerが小さい多目的教室で大混雑の中発表するの、運営側のジレンマを察した(ツラい)
perlなんぞ、ホントたまにワンライナーくらいを書かせていただく程度のわたしでも、十分楽しめるセッションばかり。
それだけ現在perl以外の言語で仕事をしているであろう発表者の方々も多いのかなと思うんですけど、
別言語やperlと関係ないサービス、開発手法について等々をperlの祭典で発表して盛り上がるという。
"perlコミュニティ"と、"そこで育った方々"の魅力を痛感した。
ということで
"ブログを書くまでがYAPC::Asia"
明日も面白そうなセッションが多数あるので楽しみ。
明日は遅れないで朝一から行く所存。
武蔵家
麺かためを頼んだのに麺が柔らかかった!!
しかし写真を撮り忘れたので、また行かなくてはならない。
chef-dkの便利さ
久しぶりに仕事の案件用で新しい環境を構築する為にchef環境を構築中、
各種gemをbundle installしているところで
"dep-selector-libgecode"のインストールにハマる。
Windows(RubyInstaller) + berkshelf 3.0 をインストール(dep-selector-libgecode問題) - Qiita
恐らく原因はこれと同じ。
こんなことに時間を使うのも勿体無いし、最新版は使いたいしということで回避策を検討していたところで
以下を見つけた。今更感ある。
Download Chef Development Kit | Chef
実行用のRubyをはじめ、必要なgem等々を全てパッケージ化している為
環境を汚さず簡単に始められる。
Redhat系ならインストールは以下のようにrpmでインストール。
sudo rpm -ivh https://opscode-omnibus-packages.s3.amazonaws.com/el/6/x86_64/chefdk-0.2.0-2.el6.x86_64.rpm
Macならパッケージを落として来てGUIのインストーラでOK。
ChefDK contains:
An early version of a brand new command-line tool, chef, that aims to streamline Chef workflow, starting with new generators.
The well-known cookbook dependency manager Berkshelf 3.0.
The Test Kitchen integration testing framework.
ChefSpec, which makes unit testing cookbooks a breeze.
Foodcritic, a linting tool for doing static code analysis on cookbooks.
All of the Chef tools you're already familiar with: Chef Client, Knife, Ohai and Chef Zero.
一通りパッケージは入っているようだけど、よく見たらknife-soloがない!!
はい、ということでインストールするのですが、
インストール方法は以下。
chef gem install knife-solo
簡単。
chef-dkはインストールするとchefコマンドが追加される。
(/opt/chefdk/bin/chefが実体でインストール時に勝手にPATHに追加される)
で、chefコマンドにはbundleとかgitの様な便利なサブコマンドが用意されている。
$ chef -h
Usage:
chef -h/--help
chef -v/--version
chef command [arguments...] [options...]
Available Commands:
exec Runs the command in context of the embedded ruby
gem Runs the `gem` command in context of the embedded ruby
generate Generate a new app, cookbook, or component
shell-init Initialize your shell to use ChefDK as your primary ruby
verify Test the embedded ChefDK applications
この中のchef gemコマンドを使用したのが上記のknife-soloのインストールということ。
追加で入れたgemもchefコマンドで入れればパッケージ内で管理されるので、要らなくなったらrpm -eでパッケージ毎アンインストールすれば環境も綺麗なままです。
注意点としては、既にグローバルにchef等をインストールしてある環境にchef-dkを入れると上手くいかないとのこと。
今後chefを使うならこれがスタンダードで良いのでは?と思います。(小並感)
MacのMagic TrackPadを使っていて、マウスポインタが飛んでしまう対応
Magic TrackPadを使っていて、突然マウスポインタが思い通りに動かなくなった。
各所ググっていても、PRAMクリアだ、トラックパッドを拭けだ、手を洗えだと言われ、
試してみても結果は変わらずダメ。
でappleの掲示板にこんな内容があった。
Magic Trackpadのカーソルが飛んでしまう。 | Apple サポートコミュニティ
"2.4GHz帯の無線LANも影響ある"
もしやと思い
System Preferences > Share から internet sharingを解除したら、
元に戻った。。。
以前からinternet sharingはonにしてたんだけどな。。。
とりあえず治ったので、同じ内容で困っている人の為に。
Packerを使ってCentOS7のboxを作りましょう。
はい、やってまいりました。
今回はCentOS7のvagrantのboxを作ってみましょう。
今回の材料はこちらです。
VirtualBox 4.3.8
Vagrant 1.6.3
Packer 0.6.1
各々インストールを済ませておきましょう。 Packerについてはこちら等々参考にどうぞ。
Packerを使ってVagrantのBoxを作る方法を一つずつ説明する/index - ヽ(´・肉・`)ノログ
手順
1. 設定ファイルを用意する
こちらのリポジトリからpacker用のtemplateファイルを用意したので落としてきましょう。
YuiSakamoto/my_packer_templates · GitHub
参考:以下のリポジトリは、CentOS/Ubuntu/ScientificLinuxの新バージョンが出る毎に、 packer用の設定ファイルを公開してくれています。助かります。
packer-templates/centos-7.0 at develop · shiguredo/packer-templates · GitHub
今回はこちらを参考に(というかそのまま使用)させていただきました。
2. Packerを使ってbox作成
$ cd my_packer_templates/centos-7.0 $ packer build -only=virtualbox-iso template.json virtualbox-iso output will be in this color. ==> virtualbox-iso: Downloading or copying Guest additions virtualbox-iso: Downloading or copying: file:///Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso ==> virtualbox-iso: Downloading or copying ISO virtualbox-iso: Downloading or copying: http://ftp.iij.ad.jp/pub/linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso virtualbox-iso: Download progress: 0% virtualbox-iso: Download progress: 0% virtualbox-iso: Download progress: 1% virtualbox-iso: Download progress: 1% virtualbox-iso: Download progress: 1% virtualbox-iso: Download progress: 2% virtualbox-iso: Download progress: 2% virtualbox-iso: Download progress: 3% virtualbox-iso: Download progress: 3% 〜中略〜 virtualbox-iso: Download progress: 98% virtualbox-iso: Download progress: 98% virtualbox-iso: Download progress: 98% virtualbox-iso: Download progress: 99% virtualbox-iso: Download progress: 99% virtualbox-iso: Download progress: 100% virtualbox-iso: Download progress: 100% virtualbox-iso: Download progress: 100% virtualbox-iso: Download progress: 100% ==> virtualbox-iso: Starting HTTP server on port 8081 ==> virtualbox-iso: Creating virtual machine... ==> virtualbox-iso: Creating hard drive... ==> virtualbox-iso: Creating forwarded port mapping for SSH (host port 3213) ==> virtualbox-iso: Executing custom VBoxManage commands... virtualbox-iso: Executing: modifyvm packer-virtualbox-iso --memory 512 virtualbox-iso: Executing: modifyvm packer-virtualbox-iso --cpus 1 ==> virtualbox-iso: Starting the virtual machine... ==> virtualbox-iso: Waiting 10s for boot... ==> virtualbox-iso: Typing the boot command... ==> virtualbox-iso: Error sending boot command: VBoxManage error: VBoxManage: error: Guest not running ==> virtualbox-iso: Unregistering and deleting virtual machine... ==> virtualbox-iso: Deleting output directory... Build 'virtualbox-iso' errored: Error sending boot command: VBoxManage error: VBoxManage: error: Guest not running ==> Some builds didn't complete successfully and had errors: --> virtualbox-iso: Error sending boot command: VBoxManage error: VBoxManage: error: Guest not running ==> Builds finished but no artifacts were created.
3. エラー発生
上記にもある通りVBoxでゲストOSが走らなかったとのこと。 ↓GUIのエラーも出てます。
ぐぐってみると以下の様な情報が。
MacのVirtualboxでkernel driver not installed のエラーで仮想サーバーが起動できなくなったときにしたこと - Vermee81の日録
チッ、材料が腐ってやがった
新鮮な具材を取り揃えましょうね。 uninstall toolsを使ってアンインストールを行い、最新版(4.3.13)を再度インストール。
4. 再度packer buildを実行
$ packer build -only=virtualbox-iso template.json virtualbox-iso output will be in this color. ==> virtualbox-iso: Downloading or copying Guest additions virtualbox-iso: Downloading or copying: file:///Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso ==> virtualbox-iso: Downloading or copying ISO virtualbox-iso: Downloading or copying: http://ftp.iij.ad.jp/pub/linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso ==> virtualbox-iso: Starting HTTP server on port 8081 ==> virtualbox-iso: Creating virtual machine... ==> virtualbox-iso: Creating hard drive... ==> virtualbox-iso: Creating forwarded port mapping for SSH (host port 3213) ==> virtualbox-iso: Executing custom VBoxManage commands... virtualbox-iso: Executing: modifyvm packer-virtualbox-iso --memory 512 virtualbox-iso: Executing: modifyvm packer-virtualbox-iso --cpus 1 ==> virtualbox-iso: Starting the virtual machine... ==> virtualbox-iso: Waiting 10s for boot... ==> virtualbox-iso: Typing the boot command... ==> virtualbox-iso: Waiting for SSH to become available...
ここで結構時間が掛かる。(VirtualBoxのウィンドウで諸々インストールされているのがわかります。)
==> virtualbox-iso: Connected to SSH! ==> virtualbox-iso: Uploading VirtualBox version info (4.3.14) ==> virtualbox-iso: Uploading VirtualBox guest additions ISO... ==> virtualbox-iso: Provisioning with shell script: scripts/base.sh virtualbox-iso: Loaded plugins: fastestmirror virtualbox-iso: base | 3.6 kB 00:00 virtualbox-iso: extras | 3.3 kB 00:00 virtualbox-iso: updates | 3.4 kB 00:00 virtualbox-iso: Loading mirror speeds from cached hostfile virtualbox-iso: * base: ftp.riken.jp virtualbox-iso: * extras: ftp.riken.jp virtualbox-iso: * updates: ftp.riken.jp virtualbox-iso: Package 1:make-3.82-21.el7.x86_64 already installed and latest version virtualbox-iso: Package kernel-devel-3.10.0-123.el7.x86_64 already installed and latest version virtualbox-iso: Package 4:perl-5.16.3-283.el7.x86_64 already installed and latest version virtualbox-iso: Resolving Dependencies virtualbox-iso: --> Running transaction check virtualbox-iso: ---> Package gcc.x86_64 0:4.8.2-16.el7 will be installed virtualbox-iso: --> Processing Dependency: cpp = 4.8.2-16.el7 for package: gcc-4.8.2-16.el7.x86_64 virtualbox-iso: --> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.8.2-16.el7.x86_64 virtualbox-iso: --> Processing Dependency: libmpfr.so.4()(64bit) for package: gcc-4.8.2-16.el7.x86_64 virtualbox-iso: --> Processing Dependency: libmpc.so.3()(64bit) for package: gcc-4.8.2-16.el7.x86_64 virtualbox-iso: ---> Package gcc-c++.x86_64 0:4.8.2-16.el7 will be installed virtualbox-iso: --> Processing Dependency: libstdc++-devel = 4.8.2-16.el7 for package: gcc-c++-4.8.2-16.el7.x86_64 virtualbox-iso: --> Running transaction check virtualbox-iso: ---> Package cpp.x86_64 0:4.8.2-16.el7 will be installed virtualbox-iso: ---> Package glibc-devel.x86_64 0:2.17-55.el7 will be installed virtualbox-iso: --> Processing Dependency: glibc-headers = 2.17-55.el7 for package: glibc-devel-2.17-55.el7.x86_64 virtualbox-iso: --> Processing Dependency: glibc-headers for package: glibc-devel-2.17-55.el7.x86_64 virtualbox-iso: ---> Package libmpc.x86_64 0:1.0.1-3.el7 will be installed virtualbox-iso: ---> Package libstdc++-devel.x86_64 0:4.8.2-16.el7 will be installed virtualbox-iso: ---> Package mpfr.x86_64 0:3.1.1-4.el7 will be installed virtualbox-iso: --> Running transaction check virtualbox-iso: ---> Package glibc-headers.x86_64 0:2.17-55.el7 will be installed virtualbox-iso: --> Finished Dependency Resolution virtualbox-iso: virtualbox-iso: Dependencies Resolved virtualbox-iso: virtualbox-iso: ======================================== virtualbox-iso: Package Arch Version Repository virtualbox-iso: Size virtualbox-iso: ======================================== virtualbox-iso: Installing: virtualbox-iso: gcc x86_64 4.8.2-16.el7 base 16 M virtualbox-iso: gcc-c++ x86_64 4.8.2-16.el7 base 7.2 M virtualbox-iso: Installing for dependencies: virtualbox-iso: cpp x86_64 4.8.2-16.el7 base 5.9 M virtualbox-iso: glibc-devel virtualbox-iso: x86_64 2.17-55.el7 base 1.0 M virtualbox-iso: glibc-headers virtualbox-iso: x86_64 2.17-55.el7 base 650 k virtualbox-iso: libmpc x86_64 1.0.1-3.el7 base 51 k virtualbox-iso: libstdc++-devel virtualbox-iso: x86_64 4.8.2-16.el7 base 1.5 M virtualbox-iso: mpfr x86_64 3.1.1-4.el7 base 203 k virtualbox-iso: virtualbox-iso: Transaction Summary virtualbox-iso: ======================================== virtualbox-iso: Install 2 Packages (+6 Dependent packages) virtualbox-iso: virtualbox-iso: Total download size: 33 M virtualbox-iso: Installed size: 80 M virtualbox-iso: Downloading packages: virtualbox-iso: warning: /var/cache/yum/x86_64/7/base/packages/glibc-devel-2.17-55.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY virtualbox-iso: Public key for glibc-devel-2.17-55.el7.x86_64.rpm is not installed virtualbox-iso: (1/8): glibc-devel | 1.0 MB 00:06 virtualbox-iso: (2/8): gcc-c++-4.8 | 7.2 MB 00:09 virtualbox-iso: (3/8): libmpc-1.0. | 51 kB 00:00 virtualbox-iso: (4/8): glibc-heade | 650 kB 00:00 virtualbox-iso: (5/8): cpp-4.8.2-1 | 5.9 MB 00:09 virtualbox-iso: (6/8): mpfr-3.1.1- | 203 kB 00:00 virtualbox-iso: (7/8): libstdc++-d | 1.5 MB 00:00 virtualbox-iso: (8/8): gcc-4.8.2-1 | 16 MB 00:13 virtualbox-iso: ---------------------------------------- virtualbox-iso: Total 2.4 MB/s | 33 MB 00:13 virtualbox-iso: Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 virtualbox-iso: Importing GPG key 0xF4A80EB5: virtualbox-iso: Userid : "CentOS-7 Key (CentOS 7 Official Signing Key)" virtualbox-iso: Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5 virtualbox-iso: Package : centos-release-7-0.1406.el7.centos.2.3.x86_64 (@anaconda) virtualbox-iso: From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 virtualbox-iso: Running transaction check virtualbox-iso: Running transaction test virtualbox-iso: Transaction test succeeded virtualbox-iso: Running transaction virtualbox-iso: Installing : mpfr-3.1.1-4.el7.x 1/8 virtualbox-iso: Installing : libmpc-1.0.1-3.el7 2/8 virtualbox-iso: Installing : cpp-4.8.2-16.el7.x 3/8 virtualbox-iso: Installing : glibc-headers-2.17 4/8 virtualbox-iso: Installing : glibc-devel-2.17-5 5/8 virtualbox-iso: Installing : gcc-4.8.2-16.el7.x 6/8 virtualbox-iso: Installing : libstdc++-devel-4. 7/8 virtualbox-iso: Installing : gcc-c++-4.8.2-16.e 8/8 virtualbox-iso: Verifying : libstdc++-devel-4. 1/8 virtualbox-iso: Verifying : mpfr-3.1.1-4.el7.x 2/8 virtualbox-iso: Verifying : glibc-headers-2.17 3/8 virtualbox-iso: Verifying : glibc-devel-2.17-5 4/8 virtualbox-iso: Verifying : libmpc-1.0.1-3.el7 5/8 virtualbox-iso: Verifying : gcc-c++-4.8.2-16.e 6/8 virtualbox-iso: Verifying : gcc-4.8.2-16.el7.x 7/8 virtualbox-iso: Verifying : cpp-4.8.2-16.el7.x 8/8 virtualbox-iso: virtualbox-iso: Installed: virtualbox-iso: gcc.x86_64 0:4.8.2-16.el7 virtualbox-iso: gcc-c++.x86_64 0:4.8.2-16.el7 virtualbox-iso: virtualbox-iso: Dependency Installed: virtualbox-iso: cpp.x86_64 0:4.8.2-16.el7 virtualbox-iso: glibc-devel.x86_64 0:2.17-55.el7 virtualbox-iso: glibc-headers.x86_64 0:2.17-55.el7 virtualbox-iso: libmpc.x86_64 0:1.0.1-3.el7 virtualbox-iso: libstdc++-devel.x86_64 0:4.8.2-16.el7 virtualbox-iso: mpfr.x86_64 0:3.1.1-4.el7 virtualbox-iso: virtualbox-iso: Complete! ==> virtualbox-iso: Provisioning with shell script: scripts/vagrant.sh virtualbox-iso: % Total % Received % Xferd Average Speed Time Time Time Current virtualbox-iso: Dload Upload Total Spent Left Speed virtualbox-iso: 100 409 100 409 0 0 77 0 0:00:05 0:00:05 --:--:-- 83 ==> virtualbox-iso: Provisioning with shell script: scripts/virtualbox.sh virtualbox-iso: mount: /dev/loop0 is write-protected, mounting read-only virtualbox-iso: Verifying archive integrity... All good. virtualbox-iso: Uncompressing VirtualBox 4.3.14 Guest Additions for Linux............ virtualbox-iso: VirtualBox Guest Additions installer virtualbox-iso: Copying additional installer modules ... virtualbox-iso: Installing additional modules ... virtualbox-iso: Removing existing VirtualBox non-DKMS k[ OK ]dules virtualbox-iso: Building the VirtualBox Guest Additions kernel modules virtualbox-iso: Building the main Guest Additions modul[ OK ] virtualbox-iso: Building the shared folder support modu[ OK ] virtualbox-iso: Building the OpenGL support module [ OK ] virtualbox-iso: Doing non-kernel setup of the Guest Add[ OK ] virtualbox-iso: Starting the VirtualBox Guest Additions[ OK ] virtualbox-iso: Installing the Window System drivers virtualbox-iso: Could not find the X.Org or XFree86 Window System, skipping. ==> virtualbox-iso: Provisioning with shell script: scripts/cleanup.sh virtualbox-iso: Loaded plugins: fastestmirror virtualbox-iso: No Match for argument: gtk2 virtualbox-iso: No Match for argument: libX11 virtualbox-iso: No Match for argument: hicolor-icon-theme virtualbox-iso: No Match for argument: bitstream-vera-fonts virtualbox-iso: Resolving Dependencies virtualbox-iso: --> Running transaction check virtualbox-iso: ---> Package avahi.x86_64 0:0.6.31-13.el7 will be erased virtualbox-iso: --> Processing Dependency: avahi = 0.6.31-13.el7 for package: avahi-libs-0.6.31-13.el7.x86_64 virtualbox-iso: ---> Package freetype.x86_64 0:2.4.11-9.el7 will be erased ==> virtualbox-iso: Gracefully halting virtual machine... ==> virtualbox-iso: Preparing to export machine... virtualbox-iso: Deleting forwarded port mapping for SSH (host port 3213) ==> virtualbox-iso: Exporting virtual machine... virtualbox-iso: Executing: export packer-virtualbox-iso --output output-virtualbox-iso/packer-virtualbox-iso.ovf ==> virtualbox-iso: Unregistering and deleting virtual machine... ==> virtualbox-iso: Running post-processor: vagrant ==> virtualbox-iso (vagrant): Creating Vagrant box for 'virtualbox' provider virtualbox-iso (vagrant): Copying from artifact: output-virtualbox-iso/packer-virtualbox-iso-disk1.vmdk virtualbox-iso (vagrant): Copying from artifact: output-virtualbox-iso/packer-virtualbox-iso.ovf virtualbox-iso (vagrant): Renaming the OVF to box.ovf... virtualbox-iso (vagrant): Compressing: Vagrantfile virtualbox-iso (vagrant): Compressing: box.ovf virtualbox-iso (vagrant): Compressing: metadata.json virtualbox-iso (vagrant): Compressing: packer-virtualbox-iso-disk1.vmdk Build 'virtualbox-iso' finished. ==> Builds finished. The artifacts of successful builds are: --> virtualbox-iso: 'virtualbox' provider box: centos-7-0-x64-virtualbox.box
無事boxファイルが作成されました。
$ ls -la (git)-[master] ? [ ~/my_packer_templates/centos-7.0] total 1058288 drwxr-xr-x 7 y-sakamoto staff 238 8 11 18:09 . drwxr-xr-x 8 y-sakamoto staff 272 8 11 18:06 .. -rw-r--r-- 1 y-sakamoto staff 541837956 8 11 18:09 centos-7-0-x64-virtualbox.box drwxr-xr-x 3 y-sakamoto staff 102 8 11 16:49 http drwxr-xr-x 3 y-sakamoto staff 102 8 11 16:57 packer_cache drwxr-xr-x 8 y-sakamoto staff 272 8 11 16:49 scripts -rw-r--r-- 1 y-sakamoto staff 2713 8 11 16:49 template.json
boxを追加する
$ vagrant box add centos-7.0 centos-7-0-x64-virtualbox.box ==> box: Adding box 'centos-7.0' (v0) for provider: box: Downloading: file:///Users/y-sakamoto/my_packer_templates/centos-7.0/centos-7-0-x64-virtualbox.box ==> box: Successfully added box 'centos-7.0' (v0) for 'virtualbox'! $ vagrant box list (git)-[master] [ ~/my_packer_templates] centos-7.0 (virtualbox, 0)
「ハッカーと画家」を読んだ
はい。
自前サーバでWPを運営するの、定期的にOS入れ替えたりするし、面倒くさくなったのでこちらにお引っ越し。
今回は読み物系を読みたくなったので、「ハッカーと画家」
- 作者: ポールグレアム,Paul Graham,川合史朗
- 出版社/メーカー: オーム社
- 発売日: 2005/01
- メディア: 単行本
- 購入: 109人 クリック: 4,884回
- この商品を含むブログ (594件) を見る
恐らく過去にwebで公開されている何章かを読んでいたこともあり、
そこまでショックは受けなかったものの、
それでも、とてつもなく純粋なパワーを感じた。
以下、印象に残ったフレーズを書き連ねました。
私の知る限り、私が大学で教わったプログラミングのやり方は全部間違っていた。作家や画家や建築家が作りながら作品を理解してゆくと同じで、プログラマはプログラムを書きながら理解してゆくベきなんだ。
四の五の言わずにコード書けと。
絵を描くことは、絵を描きながら学ぶ。
四の五の言わずにコード書けと。
「画には終わりがない。ただ描くのを止めるだけだ」
このあたりはタイトルの元となった内容。
根本的に、会社とか仕事とかで作ってる(作らされてる)プロダクトを想像するとちょっとピンとこないかもしれない。
四の五の言わずにコード書けと。
会社とは、人々が集まって他の人々が欲することをやる集団にすぎない。
"プログラムは、人々がそれを読むために書かれるべきである。たまたま、それが計算機で実行できるにすぎない。"
「Lispを激推ししておいてそんなっwww」って思ったけど、後半を読んでくと自然と納得できてしまうんだな、この言葉が。
もの創りが学ぶもうひとつの方法は先例から学ぶことだ。画家にとって美術館は技法の先例の宝庫だ。偉大な画家の作品を模写することは、何百年もの間、画家の教育過程の一環となってきた。模写する事で、絵がどのように書かれているのかを詳しく見るようになるからだ。
新しい道具(言語)を学ぶんだったら、車輪の再発明もありでしょう。
四の五の言わずにコード書けと。
Javaのプロジェクトで働くために雇われるプログラマは、 Pythonを使うプロジェクトで雇えるプログラマほど 賢くはないだろう。そして、雇えるハッカーの質は、たぶん言語の選択よりもずっと重要だ。もっとも、正直に言えば、良いハッカーはJavaよりPythonを好むという事実が、これらの言語の相対的な利点について何かを暗示していると思う。
ハッカー入門にはPythonを推しているポール。確かにこの後の説明にも、Pythonを選択する理由には納得できる。
そして後半の怒涛のLisp推し。
Lispのユニークさ
- 条件式。if-then-elseという構造だ。
- 関数型。データ型のひとつだ。リテラル表記を持ち、変数に代入できて、引数として渡したり、いろいろなことができる。
- 再帰。
- 動的型付け。Lispではすべての変数は実質的にポインタだ。変数ではなく値の法に型がついており、代入や束縛は実質的にポインタのコピーで行われ、ポインタがさしているものには作用しない。
- ガベージコレクション
- 式でプログラムが構成されること。Lispプログラム式の木であり、それぞれの式が値を返す。これはFortranとそれを引き継ぐ多くの言語とは対称的だ。それらの言語は式と文を区別している。
- シンボル型。シンボルは実質的にはハッシュテーブルに格納された文字列へのポインタである。これによって、文字を一つひとつ比較しないでもポインタの比較だけで済む。
- シンボルと定数の木によってコードを表現すること。
- 言語のすべてが常に在ること。読み込み時、コンパイル時、実行時が明確に分離したステップになっていない。読み込み時にコンパイルしてコードを走らせることもできるし、コンパイル時にコードをよんだり走らせたりすることもできるし、実行時にコードを読んだりコンパイルしたりすることができる。読み込み時にコードを走らせることにより、ユーザがLispの構文を変更することができる。コンパイル時にコードを走らせるというのはマクロの基本だ。実行時にコンパイルするというのはLispをEmacsのようなプログラムの拡張言語として使うことを容易にする。そして実行時に読み込みができるというのは、プログラム同士がS式を使って通信できるということだ。最後のアイディアは最近XMLとして再発明された。
Lispが奇妙に見えるのは、奇妙な構文を持っているからというより、構文をもっていないからと言ったほうがよいだろう。 普通の言語なら舞台裏で構文解析して作られるような構文木をLispプログラマは直接書いてプログラムを表現する。その構文木はリストで表現され、それはLispのデータ構造だ。
今、わたしがやっている仕事で求められている立場はエンジニア。
だけど、プログラマになるという目標が有る人は、すべての人が読むべき本だと思う。